1.9k Aufrufe
Gefragt in Tabellenkalkulation von wmei Mitglied (117 Punkte)
Hallo an Alle,
ich habe mir ein Makro gestrickt,welches mir die Daten aus allen vorhandenen Tabellen ab der 2. Zeile in die Datei "Mappe1Tabelle1
kopiert. Ich muß aber immer den Namen der Tabelle in A--.xls ändern. Wie bekomme ich es hin, daß die jeweils geöffnete Tabelle angesprochen wird?

Dim iSheet As Integer
Dim iLastShet As Integer
Application.ScreenUpdating = False
iLastShet = ThisWorkbook.Sheets.Count
Windows("A--.xls").Activate
For iSheet = 1 To iLastShet
'iLastShet = ThisWorkbook.Sheets.Count
Workbooks("A--.xls").Worksheets(iSheet).Activate
b = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
Range("A2:J" & b).Select
Application.CutCopyMode = False
Selection.Copy
Windows("Mappe1").Activate
Sheets("Tabelle1").Select
Cells(ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1, 1).Activate
ActiveSheet.Paste
Next
lmstr = "Es wurden " & iLastShet & " Blätter rumgeholt!!"
MsgBox lmstr
End Sub
Für Eure Verbesserungen dankt
wim

2 Antworten

0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

versuch es mal so

Dim iSheet As Integer
Dim iLastShet As Integer
Application.ScreenUpdating = False
Book= ActiveWoorkbook.Name
iLastShet = ThisWorkbook.Sheets.Count
Windows(Book).Activate
For iSheet = 1 To iLastShet
'iLastShet = ThisWorkbook.Sheets.Count
Workbooks(Book).Worksheets(iSheet).Activate
b = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
Range("A2:J" & b).Select
Application.CutCopyMode = False
Selection.Copy
Windows("Mappe1").Activate
Sheets("Tabelle1").Select
Cells(ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1, 1).Activate
ActiveSheet.Paste
Next
lmstr = "Es wurden " & iLastShet & " Blätter rumgeholt!!"
MsgBox lmstr
End Sub


Ist ungetestet, da ein Testaufbau sehr aufwendig

Gruß

Helmut
0 Punkte
Beantwortet von wmei Mitglied (117 Punkte)
Danke Helmut,
geht wunderbar.
Ich wäre für weitere sachdienliche Hinweise und Verbesserungen
dankbar.
wim
...