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

Forumthread: Makro Spalten per Checkbox bedingt ausblenden

Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 13:13:44
Peter
Hallo zusammen,
ich bräuchte Hilfe für ein Makro mit dem ich mittels Checkbox 2 Spalten in einem anderen Tabellenblatt ausblenden kann.
Wenn die Checkbox angehakt ist sollen die Spalten eingeblendet sein, ansonsten ausgeblendet.
Leider kann ich kurioserweise keine Excel-Datei hochladen :( aber ich hoffe es geht auch so.
Vielen Dank im Voraus.
Freundliche Grüße,
Patrick
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 13:17:36
Hajo_Zi
Hallo Patrick,
Option Explicit
Private Sub CheckBox1_Click()
Columns(4).EntireColumn.Hidden = CheckBox1
End Sub


Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
AW: Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 13:53:28
Peter
Hallo Hajo,
beim einfügen des Codes bekomme ich die Meldung, dass die Variable nicht definiert ist.
Lassen sich mit deinem Code auch Spalten (D und F) von einem anderen Tabellenblatt ausblenden?
Danke für die Hilfe.
Grüße,
Patrick
Anzeige
AW: Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 13:55:38
Hajo_Zi

Option Explicit
Private Sub CheckBox1_Click()
Worksheets("Data UTL").Columns(4).EntireColumn.Hidden = CheckBox1
End Sub
Gruß Hajo
AW: Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 14:01:13
Patrick
Hallo Hajo,
kannst du mir vielleicht noch eben sagen ob ich den Code in einem Modul hinzufügen soll?
Ich habe es jetzt als Modul probiert aber kann dann nicht die Checkbox mit dem Makro verknüpfen.
Zumindest geht es nicht als Private Sub.
Danke und Grüße,
Patrick
Anzeige
AW: Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 14:05:44
Hajo_Zi
Hallo Patrick,
starte den VBA Editor (Alt+F11), Bild sollte zweigeteilt sein ansonsten Strg+R, Doppelklick auf Deine Datei, Doppelklick auf Deine Tabelle, Code ins rechte Fenster kopieren, VBA Editor schließen.
Das Makro wird automatisch gestartet.
Der Code wirkt nur in dieser Tabelle.
Gruß Hajo
Anzeige
AW: Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 14:29:06
Patrick
Hallo Hajo,
danke für die Erklärung, ich habe es soweit ausgeführt aber ich habe in meiner Datei in Tabellenblatt 1 die Checkbox und in 2 werden die Spalten ausgeblendet. In welche Tabelle muss ich den Code dann einfügen? Oder kann man ansonsten auch direkt in der Checkbox das Makro hinzufügen?
Momentan habe ich es im ersten Tabellenblatt Eingefügt und bekomme die Meldung, dass das Makro nicht funktioniert oder Makros ausgeschaltet sind, obwohl die anderen Makros in der Datei normal laufen.
Danke und Grüße,
Patrick
Anzeige
AW: Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 14:31:13
Hajo_Zi
Hallo Patrick,
unter der Tabelle wo die Checkbox ist. Es ist ja ein ActiveXSteuerelement.
Gruß Hajo
AW: Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 14:38:38
Patrick
Hallo Hajo,
funktioniert super soweit, eine Kleinigkeit muss ich allerdings noch fragen:
Momentan werden die Spalten eingeblendet wenn die Checkbox aktiv ist, diese sollen allerdings ausgeblendet werden wenn man die Box anhakt, was muss ich dafür an dem Code ändern?
Danke und freundliche Grüße,
Patrick
Anzeige
AW: Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 14:51:31
Hajo_Zi
Hallo Patrick,
= CheckBox1=false
Gruß Hajo
AW: Makro Spalten per Checkbox bedingt ausblenden
11.07.2018 15:06:27
Patrick
Funktioniert super und macht was es soll perfekt.
Vielen lieben Dank! :)
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Spalten in Excel per Checkbox mit Makro ausblenden


Schritt-für-Schritt-Anleitung

  1. VBA-Editor öffnen: Drücke Alt + F11, um den VBA-Editor zu starten.

  2. Tabelle auswählen: Doppelklicke im Projektfenster auf die Tabelle, in der sich die Checkbox befindet.

  3. Code hinzufügen: Füge den folgenden Code in das rechte Fenster ein:

    Option Explicit
    Private Sub CheckBox1_Click()
       Worksheets("Data UTL").Columns(4).EntireColumn.Hidden = Not CheckBox1.Value
       Worksheets("Data UTL").Columns(6).EntireColumn.Hidden = Not CheckBox1.Value
    End Sub
  4. Makro testen: Schließe den VBA-Editor und teste die Checkbox in deinem Excel-Arbeitsblatt.


Häufige Fehler und Lösungen

  • Fehlermeldung: Variable nicht definiert
    Stelle sicher, dass alle Steuerelemente korrekt benannt sind und die Variablen im Code korrekt deklariert sind.

  • Makro funktioniert nicht oder ist deaktiviert
    Überprüfe, ob die Makros in Excel aktiviert sind. Gehe dazu zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen und aktiviere die Option für Makros.

  • Checkbox funktioniert nicht richtig
    Vergewissere dich, dass der Code im richtigen Arbeitsblatt eingefügt wurde. Der Code sollte sich im Arbeitsblatt befinden, in dem die Checkbox ist.


Alternative Methoden

Anstatt ein Makro zu verwenden, kannst du auch die Bedingte Formatierung in Excel nutzen, um die Sichtbarkeit von Spalten zu steuern. Dies ist jedoch nicht so flexibel wie ein VBA-Makro.

Ein anderer Ansatz ist die Verwendung von Formeln in Kombination mit einer Hilfsspalte, um die Sichtbarkeit zu steuern, aber das erfordert mehr Aufwand und ist weniger intuitiv.


Praktische Beispiele

Angenommen, du möchtest die Spalten D und F in einem Arbeitsblatt namens "Data UTL" ausblenden, wenn die Checkbox aktiviert ist. Der folgende VBA-Code wird dies ermöglichen:

Private Sub CheckBox1_Click()
    Worksheets("Data UTL").Columns("D").EntireColumn.Hidden = Not CheckBox1.Value
    Worksheets("Data UTL").Columns("F").EntireColumn.Hidden = Not CheckBox1.Value
End Sub

Dieser Code blendet die Spalten D und F aus, wenn die Checkbox deaktiviert ist, und blendet sie wieder ein, wenn die Checkbox aktiviert wird.


Tipps für Profis

  • Erweiterte Logik: Du kannst mehrere Checkboxen verwenden, um unterschiedliche Spalten auszublenden oder einzublenden. Achte darauf, dass jede Checkbox ihren eigenen Code hat oder verwende eine gemeinsame Funktion, die die Spalten je nach Checkbox-Status steuert.

  • Benutzerdefinierte Steuerelemente: Wenn du mehr Kontrolle und Flexibilität benötigst, solltest du in Betracht ziehen, benutzerdefinierte Steuerelemente oder Formularsteuerelemente zu verwenden.

  • Performance-Optimierung: Vermeide übermäßige Animationen oder visuelle Effekte, da diese die Performance beeinträchtigen können, insbesondere bei großen Datenmengen.


FAQ: Häufige Fragen

1. Wo füge ich den VBA-Code ein?
Der Code sollte im VBA-Editor unter dem Arbeitsblatt eingefügt werden, in dem sich die Checkbox befindet.

2. Kann ich mehrere Checkboxen verwenden?
Ja, du kannst für jede Checkbox einen eigenen Code schreiben oder eine gemeinsame Funktion erstellen, um mehrere Spalten zu steuern.

3. Was passiert, wenn die Checkbox aktiviert ist?
Wenn die Checkbox aktiviert ist, werden die definierten Spalten eingeblendet. Du kannst den Code so anpassen, dass sie ausgeblendet werden, wenn die Checkbox aktiviert wird, indem du Not CheckBox1.Value in der Logik verwendest.

4. Welche Excel-Version benötige ich?
Die beschriebenen Schritte funktionieren in den meisten aktuellen Excel-Versionen, die VBA unterstützen, einschließlich Excel 2010 und später.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige