02.07.2022, 22:25
Heje Excelfreunde,
Habe ein Problem/Phenomen, wenn ich eine userform aufrufe...
Vorhanden sind drei userform's uf01, uf02 und uf03.
Aufrufvorgang...
- uf01 - über bnt01 auf uf01 wird uf02 aufgerufen: uf02.show vbmodal (beim Programmieren auf vbmodeless)
-uf02 - über bnt02 auf uf02 wird uf03 aufgerufen: uf03.show vbmodal (beim Programmieren auf vbmodeless)
Auf uf03 gibt es vier comboboxen: cmb01...cmb04 und drei Schalter: sch01 = Zurücksetzen, sch02 = Filter Ein, sch03 = Löschen Ein. Über die comboboxen können Filterkriterien eingestellt werden. Beim Aufruf von uf03 sind die cmb03...cmb04 auf enabled= true gesetzt und die sch01...sch03 auf enabled = false.
Werden Filterkriterien durch die cmb01...cmb04 ausgewählt, werden die sch01...sch03 auf enabled=true gesetzt. sch01 setzt immer alle Einstellungen zurück.
sch02 und sch03 führen, je nach Wahl, die gleiche Aktion aus. elemente werden entsprechend der Filterkriterien gefiltert in in einer Listbox zur Verfügung gestellt.
je nach Auswahl von sch02 oder sch03 werden die verbleibenden Schalter auf enabled= false gesetzt, so der Programmcode.
Im Programmiermodus (vbmodeless) funktioniert der Code auch wie geplant. Dagegen im Anwendermodus (vbmodal) macht der code nicht alles was er soll.
beim aufruf von uf02 = uf02.show vbmodal werden die schalter sch01... sch03 auf uf03 und ausführen einer Aktion durch sch02 oder sch03 nicht auf enabled = false gesetzt.
Beispiel: Aufrufvorgang wie oben...
cmb01...cmb04 enabled = true und sch01 ..sch03 enabled = false (korrekt)
Es folgt die Auswahl von Kriterien, die sch01...sch03 enabled = true (korrekt)
Aktion sch02 = Filter Ein wird ausgführt, verbleibende Schalter sch01 und sch03 solllten auf enabled = false gehen, tun sie aber nicht, trotz Programmcode.
Wird hingegend die uf02 = uf02.show vbmodeless aufgrufen, funktioniert der Programmcode wie geplant. uf01 und uf03 können dabei vbmodal oder auch vbmodeless eingestellt sein.
Welcher Grund liegt vor, dass sich der Programmcode so verhält. Die Einstellung der Schalt sch01...sch03 sollten doch wie geplant (programmiert) erfolgen und nicht ob vbmodal oder vbmodeless...
Für Hilfe und Erklärung währe ich sehr dankbar...
Habe ein Problem/Phenomen, wenn ich eine userform aufrufe...
Vorhanden sind drei userform's uf01, uf02 und uf03.
Aufrufvorgang...
- uf01 - über bnt01 auf uf01 wird uf02 aufgerufen: uf02.show vbmodal (beim Programmieren auf vbmodeless)
-uf02 - über bnt02 auf uf02 wird uf03 aufgerufen: uf03.show vbmodal (beim Programmieren auf vbmodeless)
Auf uf03 gibt es vier comboboxen: cmb01...cmb04 und drei Schalter: sch01 = Zurücksetzen, sch02 = Filter Ein, sch03 = Löschen Ein. Über die comboboxen können Filterkriterien eingestellt werden. Beim Aufruf von uf03 sind die cmb03...cmb04 auf enabled= true gesetzt und die sch01...sch03 auf enabled = false.
Werden Filterkriterien durch die cmb01...cmb04 ausgewählt, werden die sch01...sch03 auf enabled=true gesetzt. sch01 setzt immer alle Einstellungen zurück.
sch02 und sch03 führen, je nach Wahl, die gleiche Aktion aus. elemente werden entsprechend der Filterkriterien gefiltert in in einer Listbox zur Verfügung gestellt.
je nach Auswahl von sch02 oder sch03 werden die verbleibenden Schalter auf enabled= false gesetzt, so der Programmcode.
Im Programmiermodus (vbmodeless) funktioniert der Code auch wie geplant. Dagegen im Anwendermodus (vbmodal) macht der code nicht alles was er soll.
beim aufruf von uf02 = uf02.show vbmodal werden die schalter sch01... sch03 auf uf03 und ausführen einer Aktion durch sch02 oder sch03 nicht auf enabled = false gesetzt.
Beispiel: Aufrufvorgang wie oben...
cmb01...cmb04 enabled = true und sch01 ..sch03 enabled = false (korrekt)
Es folgt die Auswahl von Kriterien, die sch01...sch03 enabled = true (korrekt)
Aktion sch02 = Filter Ein wird ausgführt, verbleibende Schalter sch01 und sch03 solllten auf enabled = false gehen, tun sie aber nicht, trotz Programmcode.
Wird hingegend die uf02 = uf02.show vbmodeless aufgrufen, funktioniert der Programmcode wie geplant. uf01 und uf03 können dabei vbmodal oder auch vbmodeless eingestellt sein.
Welcher Grund liegt vor, dass sich der Programmcode so verhält. Die Einstellung der Schalt sch01...sch03 sollten doch wie geplant (programmiert) erfolgen und nicht ob vbmodal oder vbmodeless...
Für Hilfe und Erklärung währe ich sehr dankbar...
Vielen Dank
--Janosch
Excel 2019 (64bit) Win 10 Pro (64bit)
--Janosch
Excel 2019 (64bit) Win 10 Pro (64bit)