Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
452to456
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
452to456
452to456
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Button auf mehreren Registern

Button auf mehreren Registern
12.07.2004 17:05:54
Stephan
Hallo Zusammen,
ich habe eine Arbeitsmappe mit über 30 Seiten und möchte nun auf fast allen eine Schaltfläche (ToggleButton) einfügen, die bestimmte Bereiche ein- bzw. ausblendet.
Der betroffene Bereich ist auf auf allen Seiten der selbe, d.h. eigentlich reicht mir ein Makro. So hab ich's auch bereits realisiert. Nur habe ich immer noch an die 30 Schaltflächen, für die ich jeweils ein Button_click und den Makroaufruf brauche. Und natürlich muss ich bei jeder Änderung des Makroaufrufs wieder an die 30 Click-Methoden ran. Gibt's ne Möglichkeit, einen Button auf allen Seiten anzuzeigen oder den Schaltflächen den selben Click-Handler zuzuweisen? Hab auch schon an einen eigenen Eintrag im Menü gedacht, aber es gibt Leute, die den Button "schöner" finden ...
Bin dankbar für jede Anregung.
Gruß,
Stephan.

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Button auf mehreren Registern
K.Rola
Hallo,
den Bereich musst du anpassen, diesen Code in ein Standardmodul:
Option Explicit
Sub aus_ein(S As Boolean)
Columns("A:C").Hidden = S
End Sub
Diesen Code in jedes der Blätter mit den Togglebutton:

Private Sub ToggleButton1_Click()
Call aus_ein(ToggleButton1.Value)
End Sub

Setzt natürlich voraus, dass der Bereich in allen Blättern gleich ist.
Gruß K.Rola
AW: Button auf mehreren Registern
Stephan
Hallo K.Rola.
Danke für das Code-Beispiel. Das entspricht im wesentlichen dem, was ich bisher habe. Aber ich wollte es ja eben vermeiden, in sämtlichen Sheets die Funktion ToggleButton1_Click() zu haben bzw. pro Sheet einen eigenen Button.
Leider geht das wohl nicht und ich werde auf den Tipp von Luschi mit der Symbolleiste zurückgreifen. Ist immerhin besser als ein Eintrag im Menü.
Danke und Gruß,
Stephan.
Anzeige
AW: Button auf mehreren Registern
Luschi
Hallo Stephan,
mit einen Button wird das nichts, den durch die Objektorientierung ist dieses Button nur auf dem aktuellen Tabellenblatt gültig. Erzeuge in der Symbolleiste ein neues Symbol, male eine schönes (aussagekräftiges) Icon und weise diesem Symbol folgendes Makro zu:

Sub curWorksheetRangeOnOff()
Dim OnOff As Boolean, r As Range
'ActiveCell.Parent.Name ermittelt den Name der gerade
aktiven Tabellenseite (ein alter Trick, da es auch in
Excel2003 immer noch nicht "ActiveWorkSheet" gibt
Set r = Worksheets(ActiveCell.Parent.Name).Columns("B:D")
OnOff = r.Hidden
r.Hidden = Not OnOff
End Sub

Gruß von luschi
aus klein-paris
Anzeige
AW: Button auf mehreren Registern
Stephan
Hallo Luschi,
so ungefähr hab ich das ganze befürchtet. Aber die Symbolleiste ist ein guter Tipp. Die kann ich dem Anwender vermutlich besser "verkaufen" als das Menü. Zumal ich eine eigene für das Sheet machen könnte.
Aber wegen dem Trick mit der ActiveCell: es gibt doch im Excel die Eigenschaft ActiveSheet. Zumindest nutze ich die.
Danke und Gruß,
Stephan.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige