HERBERS Excel-Forum - das Archiv

Thema: Zahl von Range herausfinden?

AW: Zahl von Range herausfinden?
Range

Hallo Tom,
bei dem Zielbereich mußt Du nur die erste Zelle angeben.
Gruß Hajo

AW: Zahl von Range herausfinden?
Range

Hi
ist doch eigentlich gar nicht notwendig.
wenn du kopierte Daten irgenwo einfügst, reicht als Zieladdresse die linke obere Zelle, dh.


WS1.Range(WS1.Cells(i, TextD1A="A"), WS1.Cells(i, TextD1E="Z")).Copy WS2.Cells(j, TextD2An="C")

genügt.
falls du es dochmal ausrechnen willst, dann kannst du mit Columns("Z").Column eine Buchstaben-Spaltenbezeichnung in die Nummer-Spaltenbezeichung umwandeln.
ansonsten bin ich dazu übergegangen, in solchen Fällen vorzugsweise mit der RESIZE-Funktion zu arbeiten, das erspart mir die doppelten Sheet-Angaben in der RANGE-Funktion.
deine Kopieranweisung würde damit so aussehen:


x = columns("Z").column - columns("A").column + 1
WS1.Cells(i, "A").Resize(1, x).copy WS2.Cells(j, "C")


Gruß, Daniel
wobei es für das Berechnen der Anzahl der Spalten noch ein paar Varianten gibt:


x = Range(TextD1A & ":" & TextD1E).columns.count


um nur mal eine zu nennen