Zusammenhängenden Bereich auswählen

Einen zusammenhängenden Bereich selektieren

Def­i­n­i­tion: Ein zusam­men­hän­gende Bere­ich sind Zellen, welche alle direkt zusam­men­hän­gen. Zellen mit ein­er Formel, welche beispiel­sweise "" (also einen Leer­String) zurück gibt, sind nicht leer! 

CurrentRegion Beispiel

Cur­ren­tRe­gion Beispiel

▲ nach oben …

Sie wollen selektieren …

Alle zusammenhängenden Zellen, egal welcher Inhalt

Markieren Sie eine beliebige Zelle im Bere­ich A1:B6 und führen Sie diesen Code aus:

ActiveCell.CurrentRegion.Select

Nur die Leerzellen

Auch hier eine beliebige Zelle in dem Bere­ich markieren und als Code:

ActiveCell.CurrentRegion.SpecialCells(xlCellTypeBlanks).Select

Das hier gezeigte Ergeb­nis wird Sie vielle­icht über­raschen:

Nur leere Zellen markiert

Nur leere Zellen markiert

B1 ist offen­sichtlich als Ankerzelle markiert, aber B5 wurde nicht markiert. Der Grund ist ein­leuch­t­end: In der Zelle ste­ht eine Formel, welche einen Leer­String "" als Wert erzeugt.

▲ nach oben …

Nur feste Werte

Markieren Sie eine beliebige Zelle im Bere­ich und führen Sie diesen Code aus:

ActiveCell.CurrentRegion.SpecialCells(xlCellTypeConstants).Select
Nur feste Werte markiert

Nur feste Werte markiert

Dass A2 nicht markiert ist liegt in diesem Fall daran, dass auch dort eine Formel und kein fes­ter Wert ste­ht.

▲ nach oben …

Nur Formeln

Markierung wie gehabt, jet­zt aber diese Formel:

ActiveCell.CurrentRegion.SpecialCells(xlCellTypeFormulas).Select
Hier nur die Formeln

Hier nur die Formeln

Was der Beweis für die vorheri­gen „Behaup­tun­gen” wäre  🙂 .

▲ nach oben …

Verschiedene

Es gibt noch einige weit­ere Argu­mente für die Selek­tion. Geben Sie ein­fach nur den ersten Teil der Formel ein:

ActiveCell.CurrentRegion.SpecialCells(xlCellType

und drück­en Sie dann Strg+Leer­taste, dann wer­den Ihnen in einem Kon­textmenü alle Möglichkeit­en ange­boten:

Auswahl per Kontextmenü

Auswahl per Kon­textmenü

Anschließend die schließende Klam­mer und beispiel­sweise die Select-Anweisung.

Zur Klarstellung  💡 

Hier noch ein­mal eine Abbil­dung:

Hier mit einer zweiten Region

Hier mit ein­er zweit­en Region

Es war eine Zelle im Bere­ich A1:B6 markiert und dann der VBA-Code aus dem ersten beispiel oben aufgerufen, also die CurrentRegion ohne Ein­schränk­ende Argu­mente. Sie erken­nen, dass durch die kom­plett leere Zeile 7 als auch Spalte C ab Zeile 8 ein neuer Bere­ich begin­nt. Die gewün­schte Cur­ren­tRe­gion ist ein­deutig erkan­nt und markiert wor­den. Die rötliche Markierung dient nur der (optis­chen) Verdeut­lichung und hat keinen Ein­fluss auf das Ergeb­nis dieser Oper­a­tion.

[NachOben­Let­zte Verweis=„CS: Cur­ren­tRe­gion”]
Dieser Beitrag wurde unter Code-Schnipsel, Tabelle und Zelle abgelegt und mit , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.