Ja, das ist möglich...
13.09.2017 16:06:00
Michael
Michael,
diese Anfrage haben wir hier laufend ;-). Folgender Code durchläuft das angegebene Verzeichnis (nach allen .xls*-Dateien) und kopiert die Zell-Werte von A12, B12, D12, U12, V12 des jeweiligen Quell-Blattes in das angegebene Zielblatt jener Mappe, aus der das Makro aufgerufen wird. Wo Du anpassen musst, ist im Code gekennzeichnet.
Sub a()
'---- Anpassen ab hier ----
Const DEINORDNER$ = "C:\Verzeichnis\Ordner\"
Const QUELLBLATT$ = "Tabelle1"
Const QUELLBEREICH$ = "A12, B12, D12, U12, V12"
Const ZIELBLATT$ = "Tabelle1"
'---- Ende ----
Dim WbZ As Workbook: Set WbZ = ThisWorkbook
Dim WsZ As Worksheet: Set WsZ = WbZ.Worksheets(ZIELBLATT)
Dim WbQ As Workbook, WsQ As Worksheet
Dim Pfad$, Datei$
Application.ScreenUpdating = False
Pfad = IIf(Right(DEINORDNER, 1) = "\", DEINORDNER, DEINORDNER & "\")
Datei = Dir(Pfad & "*.xls*", vbDirectory)
Do Until Datei = ""
If Not Datei = WbZ.Name Then
Set WbQ = Workbooks.Open(Pfad & Datei)
Set WsQ = WbQ.Worksheets(QUELLBLATT)
WsQ.Range(QUELLBEREICH).Copy
WsZ.Cells(WsZ.Rows.Count, "A").End(xlUp).Offset(1, 0).PasteSpecial _
xlPasteValuesAndNumberFormats
WbQ.Close False
Set WbQ = Nothing: Set WsQ = Nothing
End If
Datei = Dir
Loop
Set WbZ = Nothing: Set WsZ = Nothing
End Sub
Kommst Du damit zurecht, oder brauchst Du noch Infos?
LG
Michael