Tabellennamen in Tabelle eintragen mit Excel VBA
In diesem Tutorial zeige ich Euch wie Ihr alle Tabellennamen in die Tabelle eintragen könnt. Wir werden auch gleich die Tabellennamen Àndern und die Spaltenbreite entsprechend optimieren. Als kleinen Bonus werden wir noch die Hintergrundfarbe der Zellen mit EintrÀgen farblich Àndern.
Das Startvideo der VBA Tutorial Serie auf YouTube findet Ihr hier
Die Playlist meiner VBA Tutorial Serie auf YouTube findet Ihr hier
Achtung:
Benutzt zum Ăben eine separate Tabelle fĂŒr Testzwecke oder eine Kopie des Originals damit Euch keine Daten verloren gehen.
Video zu diesem Tutorial:
Beispielscript: Tabellennamen in Tabelle eintragen mit Excel VBA
Zuerst wird eine ZĂ€hlervariable benötigt die ich als Integer initialisiere. Ich setze diese auf 1 weil wir damit durch die Zeilen gehen wollen und die erste Zeile wĂ€re natĂŒrlich auch die 1.
Da ich alle TabellenblĂ€tter ĂŒber eine For Each Schleife abarbeiten möchte und ĂŒber Worksheets diese an eine Variable ĂŒbergeben muss, habe ich die Variable Tabelle als Worksheets initialisiert.
Ăber die For Each Schleife kann ich dann auf jedes einzelne Tabellenblatt der Reihe nach zugreifen.
Mit Tabelle.Name Àndere ich den Namen der Tabelle zuerst.
Im nachfolgenden Code greife ich auch die erste Tabelle zu indem ich den Index benutze. Mit Cells kann ich ĂŒber den ersten Parameter (x) die Zeile bestimmen. Da sich bei jedem Durchlauf die ZĂ€hlervariable um 1 erhöht (x=x+1) kann ich der Reihe nach die Tabellennamen in die Tabelle eintragen.
Dann benutze ich noch Interior.Color um die Hintergrundfarbe mit RGB(Rot, GrĂŒn, Blau) zu Ă€ndern. FĂŒr die Farben sind Werte von 0-255 möglich. 0 ist schwarz und 255 ist der hellste Wert.
Ganz zum Schluss lĂ€sst sich mit AutoFit die Spaltenbreite optimieren. HierfĂŒr verwende ich Columns(1) um auf die erste Spalte zuzugreifen. Falls Ihr die optimale Spaltenbreite an einer anderen Stelle benötigt, mĂŒsst Ihr das entsprechend anpassen. Spalte A ist 1, Spalte B ist 2 und so weiter đ
Sub TabellenNamenTutorial() Dim x As Integer x = 1 Dim Tabelle As Worksheet For Each Tabelle In Worksheets Tabelle.Name = "Mein Tabs " & x Worksheets(1).Cells(x, 1).Value = Tabelle.Name Worksheets(1).Cells(x, 1).Interior.Color = RGB(255, 255, 0) x = x + 1 Next Worksheets(1).Columns(1).AutoFit End Sub