Ich bin neu hier und brauche bitte eure Hilfe!
Um die Arbeit zu vereinfachen, muss ich aus mehreren ausgewählten Excel Dateien immer das erste Tabellenblatt (welches in allen Dateien gleich heißt, nämlich "Stundenaufstellung") kopieren und in eine Arbeitsmappe einfügen. Die Tabellenblätter sollen den Namen "Stundenaufstellung" nicht behalten, sondern den Namen der Datei, aus der ich das Tabellenblatt kopiert habe, erhalten. In den meisten Fällen sind dann somit 5 Tabellenblätter vorhanden, danach soll man gefragt werden ob die Datei gespeichert werden soll.
Bitte um Info wie das Makro funktionieren würde, da ich bei folgendem Makro aus dem Internet immer alle Tabellenblätter kopiert bekomme und immer die Meldung kommt, dass der Dateiname schon vorhanden ist.... :-(
Dim wbQuelle As Workbook
Dim sh As Worksheet
Dim arrDateien As Variant
Dim cntDatei As Long
arrDateien = Application.GetOpenFilename(filefilter:="Excel-Dateien(*.xlsx*),*.xlsx*", MultiSelect:=True)
If IsArray(arrDateien) Then
For cntDatei = 1 To UBound(arrDateien)
Set wbQuelle = Workbooks.Open(Filename:=arrDateien(cntDatei), UpdateLinks:=False, ReadOnly:=True)
For Each sh In wbQuelle.Worksheets
Sheets.Copy after:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
Next sh
wbQuelle.Close savechanges:=False
Next cntDatei
End If
Vielen lieben Dank im Voraus :-)
LG