AW: Ansatz
28.08.2014 14:36:25
fcs
Hallo Andi,
hier das Gerüst für ein entsprechendes Makro.
Gruß
Franz
Sub DatenZusammensuchen()
Dim wkbQuelle As Workbook, wksQuelle As Worksheet, varQuelle As Variant
Dim wkbZiel As Workbook, wksZiel As Worksheet
Dim Zeile_Z As Long, Zeile_Q As Long, Zeile_Q1 As Long
Dim Zelle As Range, rngCopy As Range
On Error GoTo Fehler
Set wkbZiel = ActiveWorkbook
Set wksZiel = wkbZiel.Worksheets("Tabelle1")
With wksZiel
'1. Einfügezeile in Ziel-abelle ermitteln
Set Zelle = .Cells.Find(What:="*", After:=.Cells(1, 1), LookIn:=xlValues, _
lookat:=xlWhole, searchorder:=xlByRows, searchdirection:=xlPrevious)
If Zelle Is Nothing Then
Zeile_Z = 1
Else
Zeile_Z = Zelle.Row + 1
End If
End With
With Application.FileDialog(msoFileDialogOpen)
.Title = "Bitte die Datei mit den Quelldaten auswählen (Mehrfach-Auswahl ist möglich)"
.AllowMultiSelect = True
Application.ScreenUpdating = False
If .Show = -1 Then
For Each varQuelle In .SelectedItems
Set wkbQuelle = Application.Workbooks.Open(varQuelle, ReadOnly:=True)
Set wksQuelle = wkbQuelle.Worksheets("Übersicht") ' - ggf. anpassen
Zeile_Q1 = 3 '1. zu kopierende Zeile in Quellblättern - ggf. anpassen
With wksQuelle
Set Zelle = .Cells.Find(What:="*", After:=.Cells(1, 1), LookIn:=xlValues, _
lookat:=xlWhole, searchorder:=xlByRows, searchdirection:=xlPrevious)
If Zelle Is Nothing Then
'keine Daten im Tabellenblatt - leeres Blatt
ElseIf Zelle.Row