27.11.2017, 11:00
(Dieser Beitrag wurde zuletzt bearbeitet: 01.12.2017, 09:59 von Rabe.
Bearbeitungsgrund: Code Tags benutzt
)
Ich bin auf eine Herausforderung gestoßen uzw. muss ich eine Excel Tabelle mit Makros narrensicher machen.
Folgendes Problem:
Die Excel Tabelle kann bestimmte Listen per Makro importieren und das Tabellenblatt entsprechend auf einen Vorgegebenen Text umbenennen,
zeitgleich Löscht es das alte Tabellenblatt.
Soweit so gut jetzt kann es allerdings passieren das neue Namen hinzu kommen wofür theoretisch ein neues Makro erstellt werden muss.
Jetzt meine Frage kann mein Makro per Dialogbox ändern?
Ich würde mir das so vorstellen das man auf eine Schaltfläche Klickt und gefragt wird wie der Planungsreport heißen soll der eingegebene Name wird dann automatisch im Makro ediert.
Ich hoffe Ihr habt Ideen wie ich so etwas umsetzten kann.
Folgendes Problem:
Die Excel Tabelle kann bestimmte Listen per Makro importieren und das Tabellenblatt entsprechend auf einen Vorgegebenen Text umbenennen,
zeitgleich Löscht es das alte Tabellenblatt.
Code:
Sub DatenHolen2()
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 (*.xlsx),*.xls", , "Bitte die Datei xyz.xls öffnen ...")
ExportDatei = CStr(ExportDatei)
If ExportDatei = "Falsch" Then Exit Sub
'öffnen der ausgewählten Datei
Set WBQuelle = Workbooks.Open(ExportDatei)
'Kopieren der Tabelle „Tabelle1“ aus Datei „xyz“
Set WSZiel = WBZiel.Worksheets.Add(After:=WBZiel.Sheets(WBZiel.Sheets.Count))
WBQuelle.Worksheets("Planungsreport").Cells.Copy WSZiel.Cells(1)
WBQuelle.Close False
Set WBZiel = Nothing
Set WBQuelle = Nothing: Set WSZiel = Nothing
Application.DisplayAlerts = False
Sheets("Planungsreport eFP").Select
ActiveWindow.SelectedSheets.Delete
Application.DisplayAlerts = True
ActiveSheet.Name = "Planungsreport eFP"
End Sub
Soweit so gut jetzt kann es allerdings passieren das neue Namen hinzu kommen wofür theoretisch ein neues Makro erstellt werden muss.
Jetzt meine Frage kann mein Makro per Dialogbox ändern?
Ich würde mir das so vorstellen das man auf eine Schaltfläche Klickt und gefragt wird wie der Planungsreport heißen soll der eingegebene Name wird dann automatisch im Makro ediert.
Ich hoffe Ihr habt Ideen wie ich so etwas umsetzten kann.