Zum Inhalt

Dynamischen Bereich in mehreren Tabellenblättern formatieren

Mit einem Excel-Makro lässt sich ein variabler Bereich sehr einfach formatieren.

Die Ausgangslage

  • Eine Arbeitsmappe mit mehreren Tabellenblättern
  • In jedem Tabellenblatt sind Informationen in immer dem gleichen Bereich eingetragen, z.B. B12:F
  • Die Anzahl der beschriebenen Zeilen variiert von Tabellenblatt zu Tabellenblatt

Das Ziel Wir möchten nun in jedem Tabellenblatt den Bereich formatieren, aber allerdings nur bis zur letzten beschriebenen Zeile. Somit könnte sich ergeben

  • Tabelle1: Bereich B12:F30
  • Tabelle2: Bereich B12:F60

Das Ganze lässt sich einfach mit einem Makro erledigen.

Sub FormatierungAusgabebereich()
'
' das Makro ermittelt die letzte beschriebene Zeile im Bereich B12:N und formatiert diesen
'
'
Dim letzte As Long
    letzte = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row


   Range("B12:n" & letzte).Select
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
    End With
End Sub

Die Formatierung kann man sich auch mühsam manuell eintragen, jedoch würde ich empfehlen, die Aufzeichnungsfunktion zu nutzen.

Damit man sich ein bisschen Arbeit spart, kann man das obige Makro nur einmal definieren und dann über ein Makro, dass die jeweilige Tabelle auswählt, aufrufen lassen.

Tabelle 1

Sub Tabelle1
   Sheets("Tabelle1").Select
   Call FormatierungAusgabebereich
End Sub

Tabelle 2

Sub Tabelle1
   Sheets("Tabelle2").Select
   Call FormatierungAusgabebereich
End Sub

Gib mir gerne einen Kaffee ☕ aus ❗️

Wenn dir meine Beiträge gefallen und geholfen haben, dann kannst du mir gerne einen Kaffee ☕️ ausgeben.

Donation via PayPalDonation via LiberaPay

Donation via Bitcoin
Bitcoin Address: bc1qfuz93hw2fhdvfuxf6mlxlk8zdadvnktppkzqzj