Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Spalten ausblenden per VBA

Spalten ausblenden per VBA
22.04.2017 01:00:28
Günther
Hi, Excelfreunde
Möchte Spalten mit VBA ausblenden,
Habe schon mit Macro Recorder probiert, klappt aber nur teilweise.
Die anderen Macros waren auch nicht das was ich wollte.
Es sollen nur die Gelben Spalten ausgeblendet werden.
Danke im Vorraus.
https://www.herber.de/bbs/user/113041.xlsm
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten ausblenden per VBA
22.04.2017 08:05:16
Hajo_Zi
ich kann Dir Leider nicht schreiben was an Deinem Makro falsch ist. Was wohl daran liegt das Deine Datei kein Makro enthält und ich nicht auf fremde Rechner schaue.

AW: Spalten ausblenden per VBA
22.04.2017 08:08:55
Luschi
Hallo Günther,
das geht sO:

Dim sAdr As String
sAdr = "N4:Q4,Z4,Y4:AB4,AJ4:AM4,AU4:AX4," & _
"BF4:BI4,BQ4:BT4,CB4:CE4,CM4:CP4," & _
"CX4:DA4"    'usw.
'ausblenden
Tabelle23.Range(sAdr).EntireColumn.Hidden = True
'wieder einblenden
Tabelle23.Range(sAdr).EntireColumn.Hidden = False
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Spalten ausblenden per VBA
22.04.2017 08:52:37
Sepp
Hallo Günther,
alle Spalten die in Zeile 4 gelb gefärbt sind (colorindex=6) werden aus/ein-geblendet.
https://www.herber.de/bbs/user/113042.xlsm
Gruß Sepp

Anzeige
AW: Spalten ausblenden per VBA
22.04.2017 12:48:25
Günther
Danke für die Anworten.
habe sie beide ausprobiert und beide funzt super.
Der Vorteil von Macro von Sepp, man kann Spalten markieren mit Gelb
und schon werden sie nach Bedarf ausgeblendet.
Fazit: Mann kann hier im Forum noch sehr viel Lernen.
Danke an allen.
Gruß Günther
Anzeige
AW: Spalten ausblenden per VBA
22.04.2017 17:09:49
snb
Noch eine:
Sub M_snb()
sn = Filter([if(mod(column(N1:MA1)-14,11)=0,address(1,column(N1:MA1))&":"&address(1,column(Q1: _
MA1)),"")], "$")
For Each it In sn
Range(it).EntireColumn.Hidden = -1
Next
End Sub

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Spalten ausblenden mit VBA in Excel


Schritt-für-Schritt-Anleitung

Um Spalten in Excel mit VBA auszublenden, kannst du folgende Schritte befolgen:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und dann auf Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden VBA-Code in das Modul ein:

    Sub SpaltenAusblenden()
       Dim sAdr As String
       sAdr = "N4:Q4,Z4:Y4:AB4,AJ4:AM4,AU4:AX4," & _
       "BF4:BI4,BQ4:BT4,CB4:CE4,CM4:CP4," & _
       "CX4:DA4"    ' Hier kannst du deine Spalten anpassen
    
       ' Ausblenden der definierten Spalten
       Tabelle23.Range(sAdr).EntireColumn.Hidden = True
    
       ' Einblenden der definierten Spalten
       Tabelle23.Range(sAdr).EntireColumn.Hidden = False
    End Sub
  4. Passe die sAdr-Variable an, um die gewünschten Spalten einzuschließen.

  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Führe das Makro aus, indem du ALT + F8 drückst, das Makro auswählst und auf Ausführen klickst.


Häufige Fehler und Lösungen

  • Fehler: Keine Auswirkung beim Ausführen des Makros

    • Lösung: Stelle sicher, dass die angegebene Tabelle korrekt ist. Ersetze Tabelle23 durch den tatsächlichen Tabellennamen.
  • Fehler: Spalten werden nicht ausgeblendet

    • Lösung: Überprüfe, ob die Spalten richtig in der sAdr-Zeile definiert sind. Achte auch auf die korrekte Schreibweise.

Alternative Methoden

Eine andere Möglichkeit, um Spalten auszublenden, besteht darin, eine Bedingung basierend auf der Zellfarbe zu verwenden. Hier ist ein Beispiel:

Sub AusblendenGelbeSpalten()
    Dim c As Range
    For Each c In Range("4:4") ' Zeile 4 durchsuchen
        If c.Interior.ColorIndex = 6 Then ' Gelbe Farbe
            c.EntireColumn.Hidden = True
        End If
    Next c
End Sub

Dieses Makro blendet alle Spalten aus, die in der vierten Zeile gelb gefärbt sind.


Praktische Beispiele

  1. Alle gelben Spalten ausblenden:

    Sub GelbeSpaltenAusblenden()
       Dim c As Range
       For Each c In Range("4:4")
           If c.Interior.ColorIndex = 6 Then
               c.EntireColumn.Hidden = True
           End If
       Next c
    End Sub
  2. Spalten mit einem Button ausblenden: Du kannst ein Makro auf einen Button legen, um das Ausblenden zu vereinfachen. Füge einfach einen Schaltfläche hinzu und weise das Makro zu.


Tipps für Profis

  • Nutze die Worksheet_Change-Ereignisprozedur, um Spalten automatisch auszublenden, wenn sich die Zellfarbe ändert.
  • Verwende Application.ScreenUpdating = False, um das Flackern des Bildschirms während der Ausführung des Makros zu vermeiden.
  • Speichere deine Arbeitsmappe als *.xlsm, um Makros zu aktivieren.

FAQ: Häufige Fragen

1. Wie kann ich alle Spalten wieder einblenden? Du kannst die folgende Zeile in ein neues Makro einfügen:

Sub AlleSpaltenEinblenden()
    Cells.EntireColumn.Hidden = False
End Sub

2. Kann ich den Code so anpassen, dass nur bestimmte Spalten ausgeblendet werden? Ja, du kannst die sAdr-Variable entsprechend anpassen, um nur die gewünschten Spalten zu bestimmen.

3. Was mache ich, wenn mein Makro nicht funktioniert? Überprüfe die Fehlermeldungen im VBA-Editor und stelle sicher, dass alle Referenzen korrekt sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige