Da ich bis vor 2 Wochen ein 08/15 Excel User war der zwar wusste was ein Makro ist aber nicht wie man eines selber programmiert geschweige denn etwas mit VBA anfangen zu wusste entschuldige ich mich zu Beginn erst schon mal für eventuell die eine oder andere "dumme" Frage.
Zu Beginn möchte ich kurz den Hintergrund und die Zusammenhänge beleuchten was ich anstellen will. Es gibt in einer Mappe eine Tabelle "Auswertung", dieses Tabelle soll mit Messwerten aus anderen Tabellenblättern (Anzahl x; Name y,b,z) gefüttert werden. Um mir in der Auswertung Min, Max, Mittelwerte u.s.w. zu Berechnen. Ich habe mir durch Tagelanges Googlen schon einige Codes zusammengetragen so dass die Grundfunktion der Auswertung auch gegeben ist jedoch ist dies noch nicht so ganz dass was ich mir vorstelle.
Der Import der Dateien funktioniert, das Umbenennen jedoch nur, wenn ich jedes eingefügte Sheet direkt mit seinem alten Namen anspreche und ihm einen neuen Namen z.b. "Messung 1" gebe. Das Problem dabei ist das die Anzahl der Messungen sprich der Tabellen die importiert werden variiert und auch die Namen der Sheets, so dass ich dies über Debuggen jedes Mal händisch ab ändern muss.
Mein Wunsch wäre es, wenn es die Möglichkeit gebe nach dem Importieren der Sheets denen automatisch den Namen "Messung 1", "Messung 2", usw. zu geben. Ich hatte schon einen Ansatz über Sheet.Count jedoch bin ich dabei gescheitert dadurch das er mir das erste Tabellen Blatt auch mit umbenannt hat, was aber weiterhin "Auswertung" heißen soll. nachfolgend mal der Anfang meines Codes eventuell hat einer ja die Zeit und Lust mir dabei zu helfen und mir die Möglichkeit zu geben VBA etwas besser zu verstehen.
Sub Datenholen()
' Datenholen Makro
Dim WBZiel As Workbook, ExportDatei As Variant
Dim WBQuelle As Workbook, WSZiel As Worksheet
Set WBZiel = ThisWorkbook
'DateiÖffnen Dialog anbieten
ExportDatei = Application.GetOpenFilename("Micrsoft Excel-Dateien (*.xls),*.xls", , "Bitte die _
Datei öffnen ...")
ExportDatei = CStr(ExportDatei)
If ExportDatei = "Falsch" Then Exit Sub
'öffnen der ausgewählten Datei
Set WBQuelle = Workbooks.Open(ExportDatei)
ActiveWorkbook.Sheets.Select
ActiveWorkbook.Sheets.Copy After:=ThisWorkbook.Sheets(1)
Sheets("Auswertung").Select
WBQuelle.Close False
'Schreibschutz raus
Application.ScreenUpdating = True 'Bildschirm aktualisierung aus
For i = 1 To ActiveWorkbook.Sheets.Count
Sheets(i).Unprotect Password:="SL"
Next
Sheets("Auswertung").Select