Hallo an alle.
Ich beschäftige mich seit einer Woche intensiver mit Makroporgrammierung in Excel. Habe durch dieses und andere Foren bereits sehr viel lernen können nur zu einem Problem was ich habe finde ich gar nichts. Vielleicht stelle ich mich auch einfach nur zu doof an ^^.
Zu meinem Problem:
Ich habe eine Excel-Datei mit einer unbestimmten Anzahl von Tabellen. Der Name der Tabellen wird vorher vom Script bereits aus einer anderen Excel-Datei entnommen. Dabei kann man zu den Namen sagen, dass sie am Anfang immer gleich sind und der Schluss durch eine Art Seriennummer gebildet wird. Der Anfang der Tabellennamen befindet sich auch in einer Variable. Was ich nun machen möchte ist, aus einer neu geöffneten Excel-Datei die bestimmten Seriennummern lesen und dann in meiner ursprünglichen Datei alle Tabellen die nicht diese Nummern enthalten zu löschen.
Als Beispiel habe ich in meiner Ursprungsdatei die Tabellen Beispiel0001 bis Beispiel0100. In meiner anderen geöffneten Datei finde ich die Nummer 0030, 0042, 0003 und 0054. Also sollen nun alle Tabellen bis auf Beipiel0030, Beispiel0042, Beispiel0003 und Beispiel0054 gelöscht werden.
Ich hatte gedacht, dass man die Nummern in einem Array speichert und dann abruft. Dafür kenne ich mich aber mit Arrays zu wenig aus um das ordentlich hinzubekommen. Ich hoffe meine Erklärung ist einleuchtend und mir kann jemand helfen.
Hier schon mal das was ich habe(wir gehen davon aus, dass die zweite Excel Datei schon offen ist.) :
intZeile = 29
Zeilenzahl = Cells("D29", Cells("D29").End(xlDown)).Rows.Count
For z = 0 To Zeilenzahl
ReDim Preserve arr(z)
arr(z) = Name & Cells(intZeile, 4).Value
intZeile = intZeile + 1
Next z
Um zwischen den Datein zu wechseln habe ich der Ursprungsdatei die variable zielmappe und der neu geöffneten Datei die Variable quellmappe gegeben. So kann ich mit Windows(zielmappe/quellmappe).Activate hin und her wechseln. Und Variablen wurden alle definiert.
Danke schon mal im Voraus.
|