Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Toggle Button in Tabelle einbinden ?

178 views
Skip to first unread message

Andreas Glied

unread,
Nov 11, 1998, 3:00:00 AM11/11/98
to

Ich möchte bei einer Tabelle in der beim öffnen alle Zeilen ausgeblendet
sind
über eine Abfrage im anderen Tabellenblatt immer bestimmte (feste) Zeilen
ein bzw. wieder ausblenden.
Ich dachte dabei an den Toggle Button.
Wie kann man dieser Schaltfläche zuweisen
das (Wenn gedrückt – TabelleABC! Zeile1-5 eingeblendet)
und (Wenn nicht gedrückt – TabelleABC! Zeile 1-5 ausgeblendet)

Oder vielleicht gibt es ja auch eine einfachere Lösung
über Kontrollkästchen oder entsprechende Funktion ?

dachte ungefähr so

=Wenn(A1="X"; Tabelle2!2:8 Selection.EntireRow.Hidden = False; Tabelle2!2:8
Selection.EntireRow.Hidden = True)

Ich habe dazu aber leider nichts passendes gefunden und
bin dankbar für jeden Tip.


Frank Arendt-Theilen

unread,
Nov 11, 1998, 3:00:00 AM11/11/98
to
On 11 Nov 1998 08:47:01 GMT, Andrea...@t-online.de (Andreas Glied)
wrote:

Hallo Andreas,
erstelle den Togglebutton in einem Tabellenblatt, klicke mit der
rechten Maustaste auf ihn, um das Kontextmenü zu erhalten und wähle
'Code anzeigen'. Gib dort im vorgegebenen Prozedurrumpf das folgende
Makro ein (Name des Togglebutton und ein- auszublendende Zeilen müssen
von dir noch angepaßt werden):

Private Sub tglEinAus_Click()
If tglEinAus.Value = True Then
Worksheets(1).Range("A10:A15").Select
Selection.EntireRow.Hidden = True
tglEinAus.Caption = "Einblenden"
Else
Worksheets(1).Range("A10:A15").Select
Selection.EntireRow.Hidden = False
tglEinAus.Caption = "Ausblenden"
End If
End Sub


MfG Frank
--

Andreas Glied

unread,
Nov 11, 1998, 3:00:00 AM11/11/98
to
Vielen Dank für die rasche Hilfe. Es hat mich einen Schritt weitergebracht.
Zwei Fragen bleiben aber noch.
Wozu ist die Funtion Worksheets(1)
Ich erhalte da eine Fehlermeldung.
Habe jetzt folgende gängige Prozedur in Tabelle2

Private Sub ToggleButton1_Click()
If ToggleButton1.Value = True Then
Rows("5:10").Select
Selection.EntireRow.Hidden = True
ToggleButton1.Caption = "Einblenden"
Range("A1").Select
Else
Rows("5:10").Select
Selection.EntireRow.Hidden = False
ToggleButton1.Caption = "Ausblenden"
Range("A1").Select
End If
End Sub

Leider funktioniert diese immer nur im eignen Tabellenblatt.
Auch der Aufruf z.B. Sheets("Tabelle1").Select bringt keinen Erfolg.
Es kommen immer Fehler.
Was mache ich falsch, oder funktioniert es prinzipiell nur im selben
Tabellenblatt.
Übrigens arbeite ich mit XL8

Vielen Dank für jeden Tip.
MfG Andreas

Frank Arendt-Theilen <32007502...@t-online.de> schrieb in Nachricht
<72cmh2$chd$3...@news01.btx.dtag.de>...

Frank Arendt-Theilen

unread,
Nov 12, 1998, 3:00:00 AM11/12/98
to
On 11 Nov 1998 21:28:42 GMT, Andrea...@t-online.de (Andreas Glied)
wrote:

>Vielen Dank für die rasche Hilfe. Es hat mich einen Schritt weitergebracht.

>>Hallo Andreas,


>>erstelle den Togglebutton in einem Tabellenblatt, klicke mit der
>>rechten Maustaste auf ihn, um das Kontextmenü zu erhalten und wähle
>>'Code anzeigen'. Gib dort im vorgegebenen Prozedurrumpf das folgende
>>Makro ein (Name des Togglebutton und ein- auszublendende Zeilen müssen
>>von dir noch angepaßt werden):
>>
>>Private Sub tglEinAus_Click()
>> If tglEinAus.Value = True Then
>> Worksheets(1).Range("A10:A15").Select
>> Selection.EntireRow.Hidden = True
>> tglEinAus.Caption = "Einblenden"
>> Else
>> Worksheets(1).Range("A10:A15").Select
>> Selection.EntireRow.Hidden = False
>> tglEinAus.Caption = "Ausblenden"
>> End If
>>End Sub
>>

Hallo Andreas,
zu 1)
du hast recht etwas fehlt, aber zunächst:
Worksheets(x) (beachte das Mehrzahl 's') ist die Liste aller in einer
Arbeitsmappe befindlichen Arbeitsblätter. Über den Index 'x' oder den
Namen eines Arbeitsblattes kann ich auf das einzelne Blatt zugreifen.
Worksheets(1) meint das 1. Blatt in der Liste der Arbeitsblätter der
Arbeitsmappe. Worksheets(1) ist nicht unbedingt das Blatt mit dem
Namen 'Tabelle1'.
Bei deinem Makro setzt du als Default-Objekt das aktive Tabellenblatt
voraus, also das Blatt, in dem der Togglebutton enthalten ist. Du
könntest aber dein Makro auch in den anderen Blättern anwenden, in
denen der Tooglebutton nicht enthalten ist, damit:

Private Sub ToggleButton1_Click()
Application.ScreenUpdating = False
Set altesBlatt = ActiveSheet


If ToggleButton1.Value = True Then

Worksheets(1).Select


Worksheets(1).Range("A10:A15").Select
Selection.EntireRow.Hidden = True

ToggleButton1.Caption = "Einblenden"
Else
Worksheets(1).Select


Worksheets(1).Range("A10:A15").Select
Selection.EntireRow.Hidden = False

ToggleButton1.Caption = "Ausblenden"
End If
altesBlatt.Select
Application.ScreenUpdating = True

Andreas Glied

unread,
Nov 12, 1998, 3:00:00 AM11/12/98
to
Hallo Frank

Nochmals vielen Dank.
Funktioniert hervoragend und hat echt weitergeholfen.

MfG Andreas

0 new messages