Anzeige
Archiv - Navigation
1064to1068
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
Checkboxen in Userform aktualisieren
27.03.2009 13:30:59
Ramon
Liebe Excel Freunde,
ich habe ein kleines Problem, bei dem ich bisher nicht den richtigen Lösungsansatz finde.
Ich habe für 3 verschiedene Geschäftsjahre 3 Tabellenblätter, die jeweils rund 200 Spalten
beinhalten. Da einige Spalten nicht für alle Benutzer, die diese Blätter zur Eingabe von Plan-
zahlen nutzen, relevant sind, soll man sich über Checkboxen in einer Userform die Spalten
wählen können, die angezeigt werden sollen.
Häkchen gesetzt = Spalten werden eingeblendet,
kein Häkchen = Spalten werden ausgeblendet.
Auf allen 3 Tabs ist ein Button, um die Userfom aufzurufen (ich nur nutze nur eine Userform
für alle Blätter).
Der Code hinter dem Button steht in einem Modul:
Sub start_selection()
With Application
.ScreenUpdating = False
.Calculation = xlCalculationManual
End With
selection.Show
End Sub


Hinter der Userform steht das Initialize Ereignis wie folgt:
Sub UserForm_Initialize()
If Columns("a:b").EntireColumn.Hidden = False Then CheckBox1.Value = True Else CheckBox1.Value = False
If Columns("c:c").EntireColumn.Hidden = False Then CheckBox2.Value = True Else CheckBox2.Value = False
'If Columns("d:d").EntireColumn.Hidden = False Then CheckBox3.Value = True Else CheckBox3.Value = False
If Columns("e:e").EntireColumn.Hidden = False Then CheckBox5.Value = True Else CheckBox5.Value = False
. . . . .
End Sub


Anschließend habe ich nach der "Initialize-Sub" die Ereignisse
für die einzelnen Checkboxen festgelegt:


Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then Columns("a:b").EntireColumn.Hidden = False Else Columns("a:b"). _
EntireColumn.Hidden = True     Range("C6").Select
End Sub



Private Sub CheckBox2_Click()
If CheckBox2.Value = True Then Columns("c:c").EntireColumn.Hidden = False Else Columns("c:c"). _
EntireColumn.Hidden = True
Range("C6").Select
End Sub


. . .
Alles funktioniert soweit wunderbar! Nur, wenn ich jetzt auf eine andere der 3 Tabellen wechsel,
und die Userform über den Button aufrufe, dann werden immer noch die Checkboxen markiert,
die in der vorherigen Tabelle markiert wurden.
Offensichtlich wird also das Initialize-Ereignis nicht durchgeführt.
Wenn ich nun die Datei schließe und erneut öffne, dann werden die Checkboxen richtig markiert
Was mache ich falsch? Weiß die Userfom nicht, welche Tabelle gerade aktiv ist?
Danke, Gruß,
Ramon

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

Betreff
Datum
Anwender
Anzeige
AW: Checkboxen in Userform aktualisieren
27.03.2009 13:52:30
Tino
Hallo,
ich vermute du beendest die Userform über Hide und rufst diese wieder auf.
Dann bleiben die letzten Einstellungen in der Form erhalten.
Ich würde mir irgendwo auf den Tabellen den Zustand der CheckBoxen speichern und
diese zur Einstellung beim start der Form nutzen.
Du mich verstehen?
Gruß Tino
AW: Checkboxen in Userform aktualisieren
27.03.2009 14:33:15
Ramon
Hallo Tino,
ja, Du hast recht. Die Userform wird über "hide" geschlossen.
Den Rest Deiner Lösung verstehe ich nicht so wirklich. Das heißt, ich kann dann auf das
eigentlich Initialize-Ereignis verzichten? - Aber was, wenn der Benutzer dann eine Spalte
"manuell" ausblendet. Das würde doch dann von den Checkboxen nicht erkannt und somit
auch nicht angezeigt werden, oder?
Gruß, Ramon
Anzeige
LÖSUNG GEFUNDEN !!!
27.03.2009 14:45:06
Ramon
Hi,
bin gerade auf eine Lösung gekommen.
Ich habe jetzt einfach in die einzelnen Tabellen als Worksheet Activate
noch ein "selection.userform_initialize" gesetzt.
Jetzt funktioniert's !
Danke, Gruß,
Ramon
AW: LÖSUNG GEFUNDEN !!!
27.03.2009 15:13:53
Tino
Hallo,
mach doch beim Initialisieren der Userform eine Überprüfung der Tabelle rein.
Diese überprüft ob die Zellbereiche aus.- bzw. eingeblendet sind und
entsprechend werden die CheckBoxen eingestellt.
Gruß Tino

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige