Excel: Dynamisch Bereich selber auswählen?

1 Antwort

Vom Beitragsersteller als hilfreich ausgezeichnet

Ist das vielleicht immer der gesamte Bereich? Dann würde:

wbQuelle.Wordsheets(1).UsedRange.Copy

reichen. Falls nur ÜBER Zeile 7 etwas steht, könntest Du das auch nachträglich löschen.
Sonst müsstest Du erst die letzte Zeile herausfinden. Z.B.:

Dim loletzte As Long
loletzte = Cells(Rows.Count, 1).End(xlUp).Row

Hilft Dir das schon weiter?

Woher ich das weiß:Berufserfahrung – IT-Administrator (i.R.)

Pambott 
Beitragsersteller
 12.06.2022, 17:14

@Oubyi, UserMod Light

Hallo. Danke!

Es fängt immer bei A7 an und geht bis zur Spalte I7. Das ist fest! Aber die Zeilen darunter sind je nach Datei unterschiedlich lang. Mal sind es 237 oder 450 Einträge.

Mit dieser Zeile mache ich den Bereich ja fest, welcher kopiert werden soll. Nun möchte ich jedoch nicht immer die Zahl am Ende manuell verändern, bevor ich das Makro ausführe.

wbQuelle.Worksheets(1).Range("A7:I239").Copy
0
Oubyi, UserMod Light  12.06.2022, 17:17
@Pambott

Hab ich Dir doch beschrieben.

Dim loletzte As Long
loletzte = Cells(Rows.Count, 1).End(xlUp).Row
Range("A7:I" & loletzte).Copy

Klappt das nicht?

0
Pambott 
Beitragsersteller
 12.06.2022, 17:22
@Oubyi, UserMod Light

Hey, ich hab das noch nicht probiert, weil dein Code nicht zu meinem Code passt. Was meinst du mit Dim loletzte?

Ich müsste folgendes ändern.

wbQuelle.Worksheets(1).Range("A7:I239").Copy
0
Oubyi, UserMod Light  12.06.2022, 17:28
@Pambott

Oh, ich dachte, Du kennst Dich ein bisschen aus in VBA.

Mit Dim ...wird ein Variable dimensioniert (festgelegt).
Das kommt in die erste Zeile.
In die zweite Zeile dann das

loletzte= ....

Und dann ersetzt Du DEIN

Range("A7:I239").Copy

durch mein Konstrukt. Der Bezug davor bleibt so.

P.S.: Bin jetzt erstmal off. Schaue in ein paar Stunden wieder vorbeil

1
Pambott 
Beitragsersteller
 12.06.2022, 18:29
@Oubyi, UserMod Light

Hey, hat geklappt. Super vielen lieben Dank dir! Ja, ich bin noch kein Profi, brauche ab und an einfach eine etwas genauere bzw. vereinfachte Erklärung. :P

0