Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
392to396
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
392to396
392to396
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Spalten ausblenden in denen cmb-Buttons sind

Spalten ausblenden in denen cmb-Buttons sind
08.03.2004 14:38:39
Torsten K.
Hallo beisammen,
mit folgendem Code kann ich über einen cmb-Button Spalten ein-bzw. ausblenden:

Private Sub cmb_ADMIN_Click()
If Columns("M:T").EntireColumn.Hidden = True Then
Columns("M:T").EntireColumn.Hidden = False
Else
Columns("M:T").EntireColumn.Hidden = True
End If
End Sub

Das Problem dabei ist, das in dem Range("M:T") andere cmb-Buttons enthalten sind. Blende ich die Spalten aus, bleiben leider die cmb-Buttons erhalten. Die sollen aber auch ausgeblendet werden. Weiß jemand Rat?
Vielen Dank im voraus.
Gruß
Torsten

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

Betreff
Datum
Anwender
Anzeige
AW: Spalten ausblenden in denen cmb-Buttons sind
08.03.2004 16:07:12
xXx
Hallo,
so geht's:

Sub test2()
Dim n As Shape, iCol As Integer
For Each n In ActiveSheet.Shapes
iCol = n.TopLeftCell.Column
Select Case iCol
Case 1 To 20
n.Visible = Not (Columns(iCol).Hidden)
End Select
Next n
End Sub

Gruß aus'm Pott
Udo
http://www.excelerator.de
AW: Spalten ausblenden in denen cmb-Buttons sind
08.03.2004 16:24:29
Torsten K.
Hallo Udo,
ich hab' zwar nicht so recht verstanden, was bei dem Code abläuft (muß ich mir bei Gelegenheit mal genauer ansehen :-)), aber es funktioniert einwandfrei.
Vielen Dank für Deine Hilfe.
Gruß
Torsten
Anzeige
Hast du mittlerweile...
10.03.2004 22:16:13
xXx
...wie's funktioniert?
Gruß aus'm Pott
Udo
AW: Hast du mittlerweile...
11.03.2004 08:52:03
Torsten K.
Hallo Udo,
im Prinzip schon, aber...
Mir ist nich ganz klar, was Excel hier macht:
"iCol = n.TopLeftCell.Column" (die Hilfe F1 hilft mir hier leider auch nicht :-( )
"n.Visible = Not (Columns(iCol).Hidden)" das steht doch dafür, das ich das Einschalten/Ausschalten über einen Button machen kann, stimmt's?
Vielleicht kannst Du ja noch etwas mehr Licht ins Dunkel bringen.
Gruß
Torsten
(P.S.: Finde ich übrigens bemerkenswert, daß Du hier nochmal nachfragst - Danke)
AW: Hast du mittlerweile...
11.03.2004 16:39:44
xXx
Hallo Torsten,
"iCol = n.TopLeftCell.Column"
fragt die Spalte (Column) der Zelle ab, in der sich die obere linke Ecke (TopLeftCell) des Buttons befindet. Es gibt im übrigen auch noch eine BottomRightCell.
"n.Visible = Not (Columns(iCol).Hidden)"
blendet den Button dann aus. Da der Button eine Visible-Eigenschaft (sichtbar) hat, Die Spalte aber eine Hidden-Eigenschaft (versteckt), muss der Wert (True/False) mit NOT umgekehrt werden. Also: Spalte.Hidden=True muss zu Button.Visible=False werden und umgekehrt.
Gruß aus'm Pott
Udo
http://www.excelerator.de
Anzeige
AW: Hast du mittlerweile...
11.03.2004 16:48:08
Torsten K.
Hallo Udo,
vielen für Deine Rückmeldung und Deine Erläuterungen.
Ich hab' aallerdings jetzt ein anderes Problem mit Deinem VBA-Code:
Es kommt vor, daß die cmb-Buttons, nachdem ich die Spalten wieder eingeblendet habe, nicht mehr sichtbar sind. Sie erscheinen erst dann wieder, wenn ich in den Entwurfsmodus aktiviere (beim Deaktivieren verschwinden sie wieder). Desweiteren erscheinen sie dann nicht mehr in den vorgegebenen Spalten, sondern in den daneben liegenden!?
Das ist äußerst lästig und ärgerlich. Hast Du eine Idee woran das liegen könnte?
Hier mein Code:

Private Sub cmb_ADMIN_Click()
'Makro blendet sowohl die Spalten M:T aus
'als auch die darin befindlichen cmb-Buttons.
If GetPassword() = True Then
Application.ScreenUpdating = False
Sheets("START").Unprotect Password:="Kennwort"
Dim n As Shape
Dim iCol As Integer
If Columns("M:T").EntireColumn.Hidden = True Then
Columns("M:T").EntireColumn.Hidden = False
Else
Columns("M:T").EntireColumn.Hidden = True
End If
For Each n In ActiveSheet.Shapes
iCol = n.TopLeftCell.Column
Select Case iCol
Case 13 To 20
'13 = M   bzw. 20 = T
n.Visible = Not (Columns(iCol).Hidden)
End Select
Next n
Else
MsgBox "War wohl nix!"
End If
Sheets("START").Protect Password:="Kennwort"
Application.ScreenUpdating = True
End Sub

Vielen dank für Deine Unterstützung im voraus.
Gruß
Torsten
Anzeige
AW: Hast du mittlerweile...
11.03.2004 20:28:57
xXx
Hallo,
das verstehe ich nicht. Klappt bei mir einwandfrei.
Gruß aus'm Pott
Udo
http://www.excelerator.de

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige