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.
Entdecke mehr von Clevercalcul
Subscribe to get the latest posts sent to your email.