Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1076to1080
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
Application.EnableEvents & userform
26.05.2009 10:51:20
Axel
Hallo Freunde,
für die Aktivierung meiner CheckBoxen 5...8 habe ich jeweils, also 4x angepasst, folgenden Code gestrickt, hier nur für CheckBox5 meiner CheckBoxen 5...8:

Private Sub CheckBox5_Click()
Application.EnableEvents = False
'Application.Wait (Now + TimeValue("0:00:01"))
For i = 5 To 8
Controls("Checkbox" & i).Value = False
Next i
CheckBox5.Value = True
FlowEinheit = "mmm_s"
Application.EnableEvents = True
End Sub


Mein Problem ist, das der Code EnableEvents = false scheinbar nicht erkannt wird: jedes mal, wenn der Code in die Zeile Controls("Checkbox" & i) kommt, verlässt er dieses Subroutine und springt er erneut in die Privat Sub CheckBox5_Click(). Wie kann das sein?
Danke für Hilfe!
Gruß,
Axel

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Application.EnableEvents & userform
26.05.2009 10:56:42
Hajo_Zi
Hallo Ael,
ist Dein Konzept nicht falsch?
Laut Deinem Code kann die CheckBox5 niemals abgewählt werden.

AW: Application.EnableEvents & userform
26.05.2009 12:43:43
Axel
Hallo Hajo,
nun, ich kann die CheckBox5 in diesem Sub nicht abwählen, richtig.
Mein Konzept ist, dass ich für alle 4 CheckBoxen (5...8) jeweils eines dieser Makros habe, die dann alle CheckBoxen false setzten und eben nur diejenige auf true, die gerade angeklickt wird. Auf diese Weise wird CheckBox5 immer dann abgewählt, wenn 6,7 oder 8 angewählt wird und umgekehrt.
Das gleiche Makro für CheckBox6 würde also so aussehen:

Private Sub CheckBox6_Click()
Application.EnableEvents = False
'Application.Wait (Now + TimeValue("0:00:01"))
For i = 5 To 8
Controls("Checkbox" & i).Value = False
Next i
CheckBox6.Value = True
FlowEinheit = "mmm_h"
Application.EnableEvents = True
End Sub


Anzeige
AW: Application.EnableEvents & userform
26.05.2009 13:01:14
Rudi
Hallo,
1. EnableEvents ist in Userforms wirkungslos.
2. Warum nimmst du keine Optionbuttons?
Gruß
Rudi
AW: Application.EnableEvents & userform
26.05.2009 14:50:42
Axel
Hallo Rudi,
ich habe über die OptionButtons nachgedacht. Aber mein Problem ist, dass ich zwei verschiedene Einheiten damit auswählbar machen will: das eine ist eine Temperatur, 2xOptionButton für Wahl zwischen Kelvin/Celsius, das andere ist ein Volumenstrom, 4xOptionButton für Wahl zwischen m³/h, m³/s, m³n/h, m³n/s.
Wie stelle ich also die 2 OptionButton der Temperatur ein, dass sie zwischen K/°C hin- und herspringen, die 4 OptionButton des Volumenstromes aber unberührt lassen und umgekehrt?
Gruß Axel
Anzeige
AW: Application.EnableEvents & userform
26.05.2009 14:51:05
Axel
Hallo Rudi,
ich habe über die OptionButtons nachgedacht. Aber mein Problem ist, dass ich zwei verschiedene Einheiten damit auswählbar machen will: das eine ist eine Temperatur, 2xOptionButton für Wahl zwischen Kelvin/Celsius, das andere ist ein Volumenstrom, 4xOptionButton für Wahl zwischen m³/h, m³/s, m³n/h, m³n/s.
Wie stelle ich also die 2 OptionButton der Temperatur ein, dass sie zwischen K/°C hin- und herspringen, die 4 OptionButton des Volumenstromes aber unberührt lassen und umgekehrt?
Gruß Axel
AW: Frame oder Groupname
26.05.2009 14:56:00
Daniel
Hi
du hast 2 möglichkeiten:
- entweder FRAMEs in die Userform mit aufnehmen und alle Optionbuttons, die zusammengehören, in den gleichen Frame schieben
- in der Eigenschaftsliste allen OptionButtons, die zusammengehören den gleichen "GroupName" vergeben.
Gruß, Daniel
Anzeige
...so werde ich's machen. DANKE ALLEN!!! (oT)
26.05.2009 15:46:54
Axel
-
AW: noch besser ist Listbox statt Optionbuttons
26.05.2009 15:58:12
Daniel
Hi
anstelle der Optionbuttons kann man auch Listboxen verwenden (eine pro Optionbuttongruppe).
die Listbox kann man per .ListStyle-Eigenschaft und mit .Multiselect = Single so hintrimmen, daß sie wie eine ansammlung von Optionbuttons aussieht und auch so verwendbar ist.
Vorteil an der Sache ist, daß egal vieviele Optionbuttons man verwenden will, man immer nur ein Steuerelement benötigt, was die Programmierung und die Abfrage wesentlich erleichtert.
Gruß, Daniel
AW: Application.EnableEvents & userform
26.05.2009 11:01:24
{Boris}
Hi Axel,
arbeite mit einer globalen Boolschen Variablen, die Du - je nach Bedarf - auf True oder False stellst und zu Beginn der Prozedur abfragst.
Grüße Boris
Anzeige
AW: Application.EnableEvents & userform
26.05.2009 16:27:53
Gerd
Hallo Alex!
so ?

Private Sub CheckBox5_Change()
Nix_oder_Eines_aus_5_bis_8
End Sub



Private Sub CheckBox6_Change()
Nix_oder_Eines_aus_5_bis_8
End Sub



Private Sub CheckBox7_Change()
Nix_oder_Eines_aus_5_bis_8
End Sub



Private Sub CheckBox8_Change()
Nix_oder_Eines_aus_5_bis_8
End Sub



Private Sub Nix_oder_Eines_aus_5_bis_8()
Dim i As Integer
With ActiveControl
If .Name Like "CheckBox[5-8]" Then
For i = 5 To 8
If Not .Name = Controls("CheckBox" & i).Name Then
If .Value = True Then Controls("Checkbox" & i).Value = False
End If
Next
End If
End With
End Sub


Gruß Gerd

Anzeige

46 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige