Habe mir mal folgendes Makro zusammengebastelt:
Sub Indexformel()
Range("H2").Select
Selection.FormulaArray = _
"=INDEX('CSV-Datei'!RC[-1]:R[13]C[-1],MATCH(RC1,'CSV-Datei'!RC[-6]:R[13]C[-6]&""_""&' _
CSV-Datei'!RC[-5]:R[13]C[-5],0))"
Range("I2").Select
Selection.FormulaArray = _
"=INDEX('CSV-Datei'!RC[-3]:R[13]C[-3],MATCH(RC1,'CSV-Datei'!RC[-7]:R[13]C[-7]&""_""&' _
CSV-Datei'!RC[-6]:R[13]C[-6],0))"
Range("J2").Select
Selection.FormulaArray = _
"=INDEX('CSV-Datei'!RC[-5]:R[13]C[-5],MATCH(RC1,'CSV-Datei'!RC[-8]:R[13]C[-8]&""_""&' _
CSV-Datei'!RC[-7]:R[13]C[-7],0))"
Range("H2:J2").Select
Selection.AutoFill Destination:=Range("H2:J6")
Range("H2:J6").Select
Range("H2").Select
Range("H2:J2").Select
Selection.AutoFill Destination:=Range("H2:J6")
Range("H2:J6").Select
Selection.Copy
Range("H2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("H2").Select
Application.CutCopyMode = False
End Sub
Jetzt ist es aber so, das das im Makro angegebene CSV-Datei Tabellenblatt immer von unterschiedlicher Länge ist. Mal enthält es nur 30 Zeilen, manchmal geht aber auch in den hohen 4stelligen Zeilenbereich. Die Spaltenanzahl ist dagegen immer gleich.
Gibt es eine Möglichkeit, dem Makro zu sagen, des es immer die volle Zeilenanzahl erkennt?
Leider hat es auch nichts gebracht, als ich während der Formeleingaben die Bereiche mit STRG+SHIFT+ENDE ausgewählt habe.
Danke.
Gruss..Micha