Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<

Microsoft Office 2003-2019 => Excel => Thema gestartet von: Michael Elbs am Juli 04, 2015, 09:56:39 Vormittag

Titel: Office 2013: Gefilterte Werte kopieren
Beitrag von: Michael Elbs am Juli 04, 2015, 09:56:39 Vormittag
Hallo zusammen,
möchte aus Tabelle1, gefilterte Werte, nur Spalte A nach Tabelle2 kopieren
1. Versuch hatte geklappt aber, wenn die Bereiche mit A:A in Tabelle 1 und Tabelle 2 gesetzt werden wird die Datei sehr groß da alle spalten kopiert werden.
Daher habe ich die Sache in eine Verkürzten und schneller laufenden Makro gebastelt.
Der Code funktioniert soweit auch ...
Sub test()
intLetzteZeile = Tabelle1.UsedRange.SpecialCells(xlCellTypeLastCell).Row
intAnzahlZeilen = Tabelle1.Range("C9:C" & intLetzteZeile).SpecialCells(xlCellTypeVisible).Count
Tabelle1.Range("A1:A" & intLetzteZeile).SpecialCells(xlCellTypeVisible).Copy Tabelle2.Range("A1:A" & intAnzahlZeilen)
End Sub
aber leider werden die kompletten Zellen kopiert, ich möchte aber nur den Wert im Ziel einfügen?
Titel: Antw:Office 2013: Gefilterte Werte kopieren
Beitrag von: Frank Furter am Juli 04, 2015, 13:54:30 Nachmittag
hallo, warum arbeitest du nicht mit dem SpezialFilter..? den könnte man mit einbisserl vba auch automatisieren..
Titel: Antw:Office 2013: Gefilterte Werte kopieren
Beitrag von: gmg-cc am Juli 04, 2015, 16:00:35 Nachmittag
Moin,

meinst du das, was hier (http://www.excel-ist-sexy.de/vba-zellen-als-wert-kopieren/) beschrieben ist?
Titel: Antw:Office 2013: Gefilterte Werte kopieren
Beitrag von: Michael Elbs am Juli 06, 2015, 17:24:02 Nachmittag
Danke Günther der 3. Eintrag war der lösende Ansatz
mein verbissener Versuch alles in einer Zeile abzubilden geht nicht da dann VBA nach dem Copy den Ort möchte, und die "PasteSpecial Paste:=xlPasteValues" ist eben kein Ort
Sub test()
intLetzteZeile = Tabelle1.UsedRange.SpecialCells(xlCellTypeLastCell).Row
intAnzahlZeilen = Tabelle1.Range("C9:C" & intLetzteZeile).SpecialCells(xlCellTypeVisible).Count
Tabelle1.Range("A1:A" & intLetzteZeile).SpecialCells(xlCellTypeVisible).Copy
Tabelle2.Range("A1:A" & intAnzahlZeilen).PasteSpecial xlPasteValues
End Sub

So geht es :-)

Danke an Frank und Günther