shaggy84
Goto Top

mit VBA überflüssige Spalten löschen und sortieren

Hallo Forum Team, bastla, und alle anderen

ich möchte gerne in meinem Excel Worksheet mit zig Spalten nur ein paar wenige Behalten. Jetzt ist die Frage wie dies am besten möglich ist. Die überflüssigen Spalten löschen oder die nötigen kopieren und wieder einsetzen?

Hier der letztere Ansatz:
Worksheets(2).Columns("I, T, V, O, CX").Copy 'Spalten kopieren  
Worksheets(2).Range("1:65535").Clear 'Blatt löschen  
Worksheets(2).Cells(1, 1).Paste 'Spalten wieder einsetzen  

Nun die Fragen, wie separiert man mehrere Spalten? Meine erste Zeile funktioniert ja nicht ... Ich möchte nur die oben genannten behalten bzw. alle anderen löschen

Wie sortiere ich Spalten wenn ich z.B. eine andere Reihenfolge als Kopie haben möchte? Ebenfalls in der ersten Code Zeile so ja nicht möglich?!

Grüße, Gregor

Content-ID: 82776

Url: https://administrator.de/contentid/82776

Ausgedruckt am: 22.11.2024 um 19:11 Uhr

wakko
wakko 11.03.2008 um 10:58:31 Uhr
Goto Top
Moin,

das geht mit der Union-Methode:
Sub SpaltenKopieren()
Dim ran As Range
Set ran = ActiveSheet.Columns("I")  
Set ran = Union(ran, ActiveSheet.Columns("T"))  
Set ran = Union(ran, ActiveSheet.Columns("V"))  
'...  
ran.Copy
Worksheets(2).Paste
End Sub
Erst das clear, dann das paste geht allerdings nicht, daher hab ich mal den Copy-Befehl auf das 2. Tabellenblatt gemacht. Ist mal wieder schnell und dreckig hingeschrieben, hoffe das Prinzip wird klar... ;)
Sortieren geht mit der sort-Methode (einfach mal ein Makro aufzeichnen und abschreiben, da wird das dann eigentlich klar)

Gruß,
Henrik
Shaggy84
Shaggy84 11.03.2008 um 13:18:00 Uhr
Goto Top
Hallo Wakko,

dein Code funktioniert wunderbar. Danke.

Das mit dem "sort" teste ich noch im Laufe des Tages aus...

Grüße, Gregor