VBA / Excel: Spalten in Schleife durchlaufen

scarvy

Grünschnabel
Ähm ja, also ich weiss, ist ein blöder Titel... :p

Ich habe vor einige Auswertungen von Excel-Tablellen zu automatisieren mit VBA. Dazu wird immer die Spalte 'A' markiert und dann zu Beginn die Spalte 'B'. Dann die 'A' und 'C', danach 'A' und 'D' usw. Es handelt sich dabei um ca. 35 Spalten. Aus den markierten Spalten wird dann eine Grafik generiert, die alle hintereinander in einem anderen Arbeitsblatt gespeichert werden sollen.

Mein Problem ist jetzt das Markieren der Spalten. Im ersten Durchlauf also 'A' und 'B'.

Ich habe es bis jetzt damit probiert:

Code:
Sheets("arbeitsblatt").Range(Columns(1), Columns(2)).Select

Ich wollte dann halt über den Index der einzelnen Spalten auf diese zugreifen und den Index danach um 1 erhöhen. Aber leider ist ja bei der oben aufgeführten Lösung der Bereich 'von...bis' angegeben und nicht: 'markiere spalte x und y'.
Wie kann ich also machen, dass es wie hier geht:

Code:
Range("A:A,B:B,E:E").Select

Hierbei werden ja nur die Spalten A, B, und E markiert.
Ich müsste aber halt über den Index zugreifen, damit ich ihn incrementieren kann...

schon einmal vielen Dank
Raphael
 
Versuch es doch mal so:

Code:
Union(Columns(1), Columns(4)).Select

Edit: Grauenhafte Rechtschreibung von mir korrigiert, verzeih
 
Zuletzt bearbeitet:
Hallo,

entschuldige, habe gestern selbst eine Möglichkeit gefunden. Auch mit Union()

Code:
Dim Bereich, n
For n = 2 To 10
    Set Bereich = Union(Columns(1), Columns(n))
    Bereich.Select
    MsgBox n
Next n

aber trotzdem vielen Dank
Raphael
 

Neue Beiträge

Zurück