Hallo,
ich möchte gerne aus mehreren Excel-Dateien Daten auslesen und in eine neue Datei kopieren. Bisher habe ich jeweils folgendes (gekürztes) "Progrämmchen " ablaufen lassen und dann jeweils mit der Ersetzen-Funktion den Namen der Excel-Datei geändert und erneut das Macro laufen lassen.
Dim myXLS As Object
Set myXLS = GetObject("d:\opt100_133.xls")
Windows("opt100_133.xls").Activate
Range("D1314").Select
Selection.Copy
Windows("sum_100.xls").Activate
Range ("B3").select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Rows("3:3").Select
Selection.Insert Shift:=xlDown
Windows("opt100_133.xls").Activate
ActiveWindow.Close (False)
End Sub
Meine Frage: Lässt sich dieser Vorgang vielleicht mit einer Schleife automatisieren? Die einzulesenden Excel-Dateien (hierpt100_133.xls) haben am Ende eine fortlaufende Nummer, d.h. die nächste zu öffnende Datei heisst dann opt100_134.xls usw...Die Daten in den Excel-Dateien stehen immer an der selben Stelle.
Hat jemand eine Idee? Ich bin leider kein VB-Profi!
Gruss
Jörg
ich möchte gerne aus mehreren Excel-Dateien Daten auslesen und in eine neue Datei kopieren. Bisher habe ich jeweils folgendes (gekürztes) "Progrämmchen " ablaufen lassen und dann jeweils mit der Ersetzen-Funktion den Namen der Excel-Datei geändert und erneut das Macro laufen lassen.
Dim myXLS As Object
Set myXLS = GetObject("d:\opt100_133.xls")
Windows("opt100_133.xls").Activate
Range("D1314").Select
Selection.Copy
Windows("sum_100.xls").Activate
Range ("B3").select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Rows("3:3").Select
Selection.Insert Shift:=xlDown
Windows("opt100_133.xls").Activate
ActiveWindow.Close (False)
End Sub
Meine Frage: Lässt sich dieser Vorgang vielleicht mit einer Schleife automatisieren? Die einzulesenden Excel-Dateien (hierpt100_133.xls) haben am Ende eine fortlaufende Nummer, d.h. die nächste zu öffnende Datei heisst dann opt100_134.xls usw...Die Daten in den Excel-Dateien stehen immer an der selben Stelle.
Hat jemand eine Idee? Ich bin leider kein VB-Profi!
Gruss
Jörg