Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ein/Ausschalter

Forumthread: Ein/Ausschalter

Ein/Ausschalter
27.03.2007 13:11:33
Toddy
Mahlzeit!
Ich möchte gerne einem Button ein Makro zuweisen, welches bei Klick entweder die Spalte B ein oder ebene ausblendet. Wie geht das? DANKE!
Toddy
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ein/Ausschalter
27.03.2007 13:13:00
chris
hallo das gehst so.
Könntest du auch mit dem Makro Rekorder aufzeichen.
mögliche schlater -> False, true

Sub aus_ein()
Columns("A:A").EntireColumn.Hidden = False
End Sub

gruß Chris
AW: Ein/Ausschalter
27.03.2007 13:20:07
harry
Hallo Toddy,
hier ein etwas erweiterter Code:
If Columns("B:B").EntireColumn.Hidden = False Then
Columns("B:B").EntireColumn.Hidden = True
Else
Columns("B:B").EntireColumn.Hidden = False
End If
Gruß
Harry
Anzeige
AW: Ein/Ausschalter
27.03.2007 13:37:00
Toddy
Perfekt. Danke!
TRotz Blattschutz
27.03.2007 15:14:00
Toddy
Habe eine weitere Frage... nun möchte ich das Blatt schützen. Dann funzt der Schalter nicht mehr. Wie mache ich das nun? Vielen Dank!
ToggleButton
27.03.2007 13:25:11
Beate
Hallo,
nimm einen ToggleButton (=Umschaltfläche) aus der Symbolleiste Steuerelement-Toolbox und weise ihm dieses Makro zu:
Private Sub ToggleButton1_Click()
Range("B:B").EntireColumn.Hidden = ToggleButton1.Value
ToggleButton1.Caption = IIf(ToggleButton1.Value, "Spalten einblenden", "Spalten ausblenden")
End Sub


Auch die Beschriftung des Buttons passt sich dann je nach Zustand an.
Gruß,
Beate
Anzeige
AW: ToggleButton
27.03.2007 14:39:00
André
Hallo Beate,
super Sache mit dem ToggleButton habe ich auch gut verwenden können.
Danke
Hey, ist das toll!!
27.03.2007 15:18:12
Franz
Hallo Beate,
ich danke auch
Franz
;
Anzeige

Infobox / Tutorial

Ein/Ausschalter in Excel erstellen


Schritt-für-Schritt-Anleitung

Um einen Ein/Ausschalter in Excel zu erstellen, folge diesen Schritten:

  1. Makro erstellen: Öffne den VBA-Editor, indem Du ALT + F11 drückst.

  2. Neues Modul einfügen: Klicke im Menü auf Einfügen > Modul.

  3. Code einfügen: Verwende den folgenden VBA-Code, um die Spalte B ein- und auszublenden:

    Sub aus_ein()
       If Columns("B:B").EntireColumn.Hidden = False Then
           Columns("B:B").EntireColumn.Hidden = True
       Else
           Columns("B:B").EntireColumn.Hidden = False
       End If
    End Sub
  4. Button erstellen: Gehe zurück zu Deinem Arbeitsblatt und füge einen Button ein:

    • Klicke auf Entwicklertools > Einfügen > Schaltfläche (Formularsteuerelement).
    • Ziehe den Button auf das Arbeitsblatt.
  5. Makro zuweisen: Klicke mit der rechten Maustaste auf den Button und wähle Makro zuweisen. Wähle das gerade erstellte Makro aus_ein aus.

  6. Button testen: Klicke auf den Button, um die Spalte B ein- oder auszublenden.


Häufige Fehler und Lösungen

  • Fehler: Der Button funktioniert nicht nach dem Schutz des Blattes

    • Lösung: Du musst sicherstellen, dass das Makro auch im geschützten Blatt funktioniert. Du kannst das Blatt so schützen, dass das Makro weiterhin ausgeführt werden kann. Verwende zum Beispiel:
    ActiveSheet.Protect UserInterfaceOnly:=True
  • Fehler: Spalte wird nicht ausgeblendet

    • Lösung: Überprüfe, ob Du den richtigen Spaltenbuchstaben im Code verwendet hast. Stelle sicher, dass der Code für Spalte B lautet (Columns("B:B")).

Alternative Methoden

Anstelle eines klassischen Buttons kannst Du auch einen ToggleButton verwenden. Hier ist der Code, den Du dafür verwenden kannst:

Private Sub ToggleButton1_Click()
    Range("B:B").EntireColumn.Hidden = ToggleButton1.Value
    ToggleButton1.Caption = IIf(ToggleButton1.Value, "Spalten einblenden", "Spalten ausblenden")
End Sub

Der ToggleButton hat den Vorteil, dass sich seine Beschriftung automatisch ändert, je nachdem, ob die Spalte ein- oder ausgeblendet ist.


Praktische Beispiele

Wenn Du mehrere Spalten gleichzeitig ein- oder ausblenden möchtest, kannst Du den Code wie folgt anpassen:

Sub mehrere_spalten()
    If Columns("B:D").EntireColumn.Hidden = False Then
        Columns("B:D").EntireColumn.Hidden = True
    Else
        Columns("B:D").EntireColumn.Hidden = False
    End If
End Sub

Setze diesen Code in ein neues Makro und weise es einem Button oder ToggleButton zu.


Tipps für Profis

  • Makro-Rekorder: Du kannst den Makro-Rekorder verwenden, um Dir den VBA-Code automatisch aufzeichnen zu lassen. Das ist besonders nützlich, wenn Du dir unsicher bist.
  • Fehlerbehandlung: Füge eine Fehlerbehandlung in Deinen Code ein, um sicherzustellen, dass Dein Makro auch bei unerwarteten Eingaben reibungslos funktioniert.

FAQ: Häufige Fragen

1. Wie kann ich das Makro im geschützten Modus verwenden?
Um ein Makro im geschützten Modus auszuführen, musst Du den Blatt-Schutz so einstellen, dass Makros weiterhin funktionieren. Dafür kannst Du die Option UserInterfaceOnly:=True verwenden.

2. Was ist der Unterschied zwischen einem Button und einem ToggleButton?
Ein Button führt eine Aktion aus, wenn Du darauf klickst. Ein ToggleButton hingegen ändert seinen Zustand zwischen ein- und ausblenden und passt seine Beschriftung entsprechend an.

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