Huhu ihr lieben. Ich importiere mit einem VBA Code eine Excel Datei und lese verschiedene Zellen aus. Jedoch ist es nun erforderlich, das ich es irgendwie hin bekomme die Tabellenblätter auszuwählen. Gibt es denn eine Möglichkeit, wenn ich die Excel Datei ausgewählt habe, das ich eine Auswal über alle Tabellenblätter bekomme in die ich einen Haken setzen kann um diese dann alle je nach Auswahl zu importieren.
Hier mein Code zum importieren.
Dim wbAlt As Workbook, wbNeu As Workbook
Dim wsAlt As Worksheet, wsNeu As Worksheet
Dim StatusCalc As Long
Sub importieren()
Set wbNeu = ThisWorkbook
'Alte Version öffnen
ChDir (ThisWorkbook.Path)
With Application.FileDialog(msoFileDialogOpen)
.Title = "Bitte Datei mit alten Versionsdaten öffen"
.Filters.Clear
.Filters.Add "Excel-Dateien", "*.xls;*.xlsm;*.xlsx),*.xls;*.xlsm;*.xlsx", 1
If .Show = -1 Then
'Alte Version schreibgeschütz öffnen
Set wbAlt = Workbooks.Open(Filename:=.SelectedItems(1), ReadOnly:=True)
Else
GoTo Beenden
End If
End With
'Events und Berechnung speichern und deaktivieren - START
With Application
.EnableEvents = False
.ScreenUpdating = False
StatusCalc = .Calculation
.Calculation = xlCalculationManual
End With
'Events und Berechnung speichern und deaktivieren - ENDE
'Importieren der alten Werte - START
Set wsAlt = wbAlt.Worksheets("Tabelle1")
Set wbNeu = ThisWorkbook
Set wsNeu = wbNeu.Worksheets("Tabelle1")
.
.Zellen importieren
.
.
wbAlt.Close savechanges:=False
Beenden:
With Application
.EnableEvents = True
.ScreenUpdating = True
.Calculation = StatusCalc
End With
End Sub