Hallo Forum,
ich habe eine gefilterte Liste und würde nun gerne die sichtbaren Zellen - also das gefilterte Ergebnis - direkt in eine Range-Variable kopieren.
Für eine bessere Lesbarkeit schreibe ich nur kurz "Sheet" oder "Range" statt der kompletten Bezeichnung.
Im Moment mache ich den Umweg, die gefilterte Liste mit Sheet.Range.SpecialCells(xlCellTypeVisible).Copy in einen anderen Bereich zu kopieren und dann die Range-Variable von dort zu füttern. Aber das geht doch bestimmt auch direkt, oder?
Ich habe schon versucht, es so zu lösen:
Dim rngFilter as Range
Set rngFilter = Sheet.Range.AdvancedFilter Action:=xlFilterInPlace, Unique:=True
oder auch mit
Sheet.Range.AdvancedFilter Action:=xlFilterCopy, Unique:=True, Destination:=rngFilter
Leider gibt es bei der ersten Variante einen Syntax-Fehler und bei der zweiten Variante einen Laufzeitfehler 1004 "Anwendungs- oder objektdefinierten Fehler".
Kann mir da jemand helfen?
Danke!
Mick
ich habe eine gefilterte Liste und würde nun gerne die sichtbaren Zellen - also das gefilterte Ergebnis - direkt in eine Range-Variable kopieren.
Für eine bessere Lesbarkeit schreibe ich nur kurz "Sheet" oder "Range" statt der kompletten Bezeichnung.
Im Moment mache ich den Umweg, die gefilterte Liste mit Sheet.Range.SpecialCells(xlCellTypeVisible).Copy in einen anderen Bereich zu kopieren und dann die Range-Variable von dort zu füttern. Aber das geht doch bestimmt auch direkt, oder?
Ich habe schon versucht, es so zu lösen:
Dim rngFilter as Range
Set rngFilter = Sheet.Range.AdvancedFilter Action:=xlFilterInPlace, Unique:=True
oder auch mit
Sheet.Range.AdvancedFilter Action:=xlFilterCopy, Unique:=True, Destination:=rngFilter
Leider gibt es bei der ersten Variante einen Syntax-Fehler und bei der zweiten Variante einen Laufzeitfehler 1004 "Anwendungs- oder objektdefinierten Fehler".
Kann mir da jemand helfen?
Danke!
Mick