VBA: Zeilen und Spalten

Dies ist nicht der erste Beitrag, der sich der Thematik widmet. Im Beitrag „VBA-Grundanweisungen (II)“ ging es bereits um das Selektieren und Aktivieren von Zeilen und Spalten sowie um das Einfügen und Löschen dieser.

Der Vollständigkeit halber findest Du die entsprechenden VBA-Anweisungen in diesem Beitrag als kurze Wiederholung.

Neu sind im Beitrag die Makros, um Zeilen und Spalten einzufügen bzw. zu löschen, sie aus- oder einzublenden sowie zur Veränderung von Zeilenhöhe bzw. Spaltenbreite.

Zur Einstimnung: Seit Excel 2007 umfasst eine Zeile 16.384 Zellen (Spalten A bis XFD) und eine Spalte 1.048.576 Zellen. Du hast also reichlich Auswahl, um die nachfolgenden Codes auszuprobieren.

1. Zeilen und Spalten selektieren bzw. aktivieren

Folgende Beispiele möchte ich Dir hierzu anbieten. Zum vollständigen Code gehört jeweils die Eingangszeile, z.B. „Sub ZeileSelektieren()“ sowie der Abschluss „End Sub“. In den Beispielen erspare ich und das und zeige nur die eigentliche Codezeile.

Zeilen

Zeile 35 selektieren:     Rows(35).Select

Damit wird nur eine Zeile markiert.

Zeilen 14 bis 17 selektieren:     Rows(„14:17“).Select

Damit werden mehrere Zeilen markiert. Beachte, dass der Klammerinhalt in Anführungszeichen zu setzen ist.

Zeile 22 aktivieren:     Row(22).Activate

Zeilen 27 bis 31 aktivieren:     Rows(„27:31“).Activate

Spalten

Spalte 5 selektieren:     Columns(5.Select

Spalte D selektieren:     Columns(„D“).Select

Spalten D bis F selektieren:     Columns(„D:F“).Select

Spalte 3 aktivieren:     Columns(3).Activate

Spalte G aktivieren:     Columns(„G“).Activate

Spalten B bis C aktivieren:     Columns(„B:C“).Activate

2. Zeilen und Spalten einfügen bzw. löschen

Zeilen

Zeile 10 einfügen:     Rows(10).Insert

War Zeile 10 bisher belegt, wird die „alte“ Zeile 10 jetzt die Zeile 11. Die „neue“ Zeile 10 ist leer.

Zeilen 15 bis 16 einfügen:     Rows(„15:16“).Insert

Die „alten“ Zeilen 15:16 werden jetzt die Zeilen 17:18. Die „neuen“ Zeilen 15:16 sind leer.

Zeile 10 löschen:     Rows(10).Delete

Zeilen 15 bis 16 löschen:     Rows(„15:16“).Delete

Spalten

Spalte 5 einfügen:     Columns(5).Insert

Spalte K einfügen:     Columns(„K“).Insert

Spalten J bis K einfügen:     Columns(„J:K“).Insert

Spalte 8 löschen:     Columns(8).Delete

Spalte K löschen:     Columns(„K“).Delete

Spalten J bis K löschen:     Columns(„J:K“).Delete

3. Zeilen und Spalten ausblenden und einblenden

Die VBA-Anweisung für die Eigenschaft „Versteckt“ heißt „Hidden“.

Willst Du eine Zeile oder Spalte ausblenden, musst Du die Eigenschaft mit „True“ auf „Wahr“ setzen.

Willst Du das Objekt wieder einblenden, musst Du mit „False“ auf „Falsch“ setzen.

Zeilen

Zeile 2 ausblenden:     Rows(2).Hidden=True

Zeilen 27 bis 31 ausblenden:     Rows(„27:31“).Hidden=True

Zeile 2 einblenden:     Rows(2).Hidden=False

Zeilen 27 bis 31 einblenden:     Rows(„27:31“).Hidden=False

Spalten

Spalte 5 ausblenden:     Columns(5).Hidden=True

Spalte K ausblenden:     Columns(„K“).Hidden=True

Spalten H bis K ausblenden:     Columns(„H:K“). Hidden=True

Spalte 5 einblenden:     Columns(5).Hidden=False

Spalte K einblenden:     Columns(„K“). Hidden=False

Spalten H bis K einblenden:     Columns(„H:K“). Hidden=False

4. Veränderung der Zeilenhöhe bzw. der Spaltenbreite

Zeilenhöhe

Rows(173).RowHeight=30

Dieser Code verändert die Zeilenhöhe auf den angegebenen Wert.

Rows(173).AutoFit

Dieser Code passt die Zeilenhöhe automatisch an den Inhalt an.

Rows(„188:190“).AutoFit

Mit diesem Code werden mehrere Zeilen automatisch angepasst.

Spaltenbreite

Columns(11).ColumnWidth=20

Dieser Code verändert die Spaltenbreite auf den angegebenen Wert.

Columns(11).AutoFit

Dieser Code passt die Spalten Breite automatisch an den Inhalt an.

Columns(„H:K“). AutoFit

Mit diesem Code werden mehrere Spalten automatisch angepasst.

5. Zusammenfassung

Die vorgestellten Codesplitter werden in der Praxis kaum für sich allein verwendet werden. In der Regel werden vorgelagerte Anweisungen vorhanden sein, an die die Zeilen-/Spalten-Codes anzupassen sind.

Ebenso ist möglich, dass Zeilen/Spalten hinzugefügt, gelöscht, in Abhängigkeit vom Ergebnis einer IF-Abfrage oder in Abhängigkeit von Rechenergebnissen aus- oder eingeblendet  werden sollen.

Die aufgeführten Codesplitter geben Dir jedenfalls notwendiges Grundwissen. Der Beitrag erhebt jedoch keinen Anspruch auf Vollständigkeit der möglichen Methoden und Eigenschaften.

Ggf. wird er an dieser Stelle fortgesetzt.

 

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s