ich hab eine kleine Herrausforderung mit einem Makro. Ich hab eine Excel Tabelle die ich auch einen anderen Programm exportiert geliefert bekomme. Leider ist das Format der Tabelle beim Export nicht anpassbar. Ich habe eine weitere Tabelle in die ich die Daten per Makro einlesen möchte. Auch da ist die Struktur fest vorgegeben.
Ich muss nun also die Export-Tabelle öffnen per Makro, einen Bereich markieren, diesen nach einer bestimmten Spalte sortieren, dann Zeilen die einen bestimmten Wert beinhalten löschen und dann die Informationen die noch da sind spaltenweise kopieren in die neue Tabelle.
Ich bekomme es soweit hin die Exportdatei zu öffnen per Makro und den Bereich der sortiert werden soll zu markieren. Die Sortierung und der Rest hingegen scheitert. Ich hab eine Makro aufgezeichnet mit dem Rekorder für das sortieren. Aber wenn ich das aus der anderen Datei heraus starte, gibt es eine Fehlermeldung.
So sieht das aufgezeichnete Makro aus:
Range("A2:D85").Select
Selection.Sort Key1:=Range("D2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Und so habe ich es in die andere Datei eingebunden:
Workbooks("liste.xls").Sheets(1).Range("A2:D85").Select
Workbooks("liste.xls").Selection.Sort Key1:=Range("D2"), Order1:=xlAscending, Header:=xlGuess,
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Aber das funktioniert wie gesagt so nicht. Hat jemand eine Idee und vielleicht auch zu den anderen Dingen die noch ausstehen?
Die Datei ist folgendermassen aufgebaut:
- 1. Zeile ist unwichtig und kann ignoriert werden
- ab der 2. Zeile kommen Einträge die wie folgt strukturiert sind
Vorname Leerzelle Nachname Wert
Die Tabelle soll also nach Wert sortiert werden. Dann sollen alle Zeilen die in Wert gelöscht stehen haben entfernt werden. Zum Schluß noch die Spalten einzeln ab Zeile 2 bis letzten Eintrag kopiert werden.
Hoffe das war ausführlich genug für Hilfe.
Gruß
Sile1234