Excel VBA – Leere Spalten ausblenden

Excel VBA – Leere Spalten ausblenden
5 Sterne
7 Bewertungen

Dieser Beitrag ist ein Teil der VBA Grundlagen Serie.

In diesem Beitrag zeige ich wie Sie leere Spalten mithilfe einer Schleife finden und verstecken können.

111 VBA Makros die Ihr Leben leichter machen. Egal ob Sie Einsteiger oder fortgeschrittener Anwender sind – in diesem Buch finden Sie Lösungen für Ihre alltäglichen Aufgaben. Keine Vorkenntnisse notwendig.

Ich habe folgende Werte in meine Tabelle eingetragen.
Leere Spalten
Nun schreiben wir unser Makro. Definieren Sie zunächst zwei Variablen für die Spalten.

Sub SpaltenVerstecken()
Dim Spalte As Integer
Dim SpalteEnd As Integer

End Sub

Danach geben wir an mit welcher Tabelle wir arbeiten wollen.

With Tabelle1

End With

Nun ermitteln wir wieviele Spalten in der Tabelle verwendet werden. Die Anzahl der Spalten wird in der Variable SpalteEnd gespeichert.

SpalteEnd = .UsedRange.Columns.Count

Nun wissen wir welche Spalte die letzte ist. Wir gehen nun alle Spalten durch, von der ersten bis zur letzten. Dabei prüfen wir ob die Zelle in der ersten Zeile der jeweiligen Spalte leer ist.

For Spalte = 1 To SpalteEnd
If .Cells(1, Spalte).Value = "" Then

End If
Next Spalte

Wenn die Bedingung zutrifft blenden wir die jeweilige Spalte über die Eigenschaft Hidden aus. Wenn ein Wert vorhanden ist blenden wir die Spalte ein.

If .Cells(1, Spalte).Value = "" Then
.Columns(Spalte).Hidden = True
Else
.Columns(Spalte).Hidden = False
End If

Unternehmensplanung mit SAP BPC

111 VBA Makros die Ihr Leben leichter machen

Wollen Sie Ihre langweiligen Routineaufgaben loswerden? Möchten Sie Excel an Ihre Bedürfnisse anpassen, Berechnungen automatisieren, eigene Dialogfelder erstellen und vieles mehr? Dieses Buch zeigt Ihnen, wie Sie Ihre Aufgaben schnell und einfach mit VBA erledigen.

Führen Sie Ihr Makro aus und wechseln Sie in die Tabelle1.
Die leeren Spalten wurden versteckt.
Leere Spalten wurden versteckt

Das komplette Makro:

Sub SpaltenVerstecken()
Dim Spalte As Integer
Dim SpalteEnd As Integer

With Tabelle1
SpalteEnd = .UsedRange.Columns.Count

For Spalte = 1 To SpalteEnd
If .Cells(1, Spalte).Value = "" Then
.Columns(Spalte).Hidden = True
Else
.Columns(Spalte).Hidden = False
End If

Next Spalte

End With
End Sub

Um alle Spalten wieder einzublenden können Sie das folgende Makro verwenden

Sub AlleSpaltenEinblenden()

Tabelle1.Columns.Hidden = False

End Sub

Die Beispiel Excel Datei mit dem sofort einsetzbaren Makro und 111+ andere Makros, die Ihr Leben leichter machen, finden Sie hier.

Beeindrucke deinen Chef mit coolen Excel Tricks!

  • Lasse dich von deinen Kollegen nicht abhängen!
  • Spare Zeit und nutze diese für angenehmere Dinge
  • Steigere deine Produktivität und Effizienz
  • Es ist leicht - In meinem Newsletter gebe ich Schritt für Schritt Anleitungen die jeder versteht
  • Bei der Anmeldung zu meinem Newsletter erhälst du das Buch „Excel Tricks die deinen Chef beeindrucken“ als Willkommensgeschenk.
20 Excel Tricks

Jetzt anfordern!

* Pflichtfeld
 
Kein SPAM. 100% sicher.

Quellen und weiterführende Literatur:
Bernd Held – VBA mit Excel: Das umfassende Handbuch
Falls Ihnen dieser Beitrag weitergeholfen hat, wäre es eine sehr nette Anerkennung meiner Arbeit wenn Sie z.B. Ihre Bücher über Amazon bestellen würden. Wenn Sie ein Produkt kaufen, erhalte ich dafür eine Provision. Für Sie ändert sich am Preis des Produktes gar nichts. Ich möchte mich an dieser Stelle jetzt schon für Ihre Unterstützung bedanken.

Denis Reis ist Business Intelligence Consultant und gibt als Buchautor sein Wissen rund um den SAP Projektalltag weiter. Wenn Sie tatkräftige Unterstützung bei Ihren SAP BI Projekten benötigen, können Sie ihn über Xing, LinkedIn oder Facebook kontaktieren.
Des Weiteren unterrichtet er Projektmanagement und Controlling an der Wiesbaden Business School. Der aus Düsseldorf stammende Familienmensch zählt zu denjenigen, die auf komplizierte Darstellungen verzichten und das Ganze auf den Punkt bringen.

0 Kommentare

Dein Kommentar

Want to join the discussion?
Feel free to contribute!

Kommentar verfassen