Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

Combobox Ereignis

Betrifft: Combobox Ereignis von: Jörg
Geschrieben am: 05.05.2008 15:50:24

Hallo zusammen,

folgendes Problem:

Beim öffnen eines Userform werden in eine Combobox Werte zur Auswahl eingelesen.
Wenn ein Wert ausgewählt wird soll eine Prozedur ausgeführt werden (Private Sub Combobox1_change () ). Leider wird die Prozedur schon beim füllen ausgeführt. Denke, daß dies schon einem change entspricht.
Wie kann ich die Prozedur ansteuern ohne, daß das erste Füllen von Werten berücksichtigt wird?

Mit freundlichen Grüssen
Jörg

  

Betrifft: AW: Combobox Ereignis von: Bertram
Geschrieben am: 05.05.2008 15:54:34

Hallo Jörg,

bevor du die Box befüllst, schreibe Application.EnableEvents = False und danach Application.EnableEvents = True

Gruß
Bertram


  

Betrifft: das ist falsch von: Rudi Maintaire
Geschrieben am: 05.05.2008 15:57:21

Hallo,
EnableEvents hat bei UF keine Auswirkungen.

Gruß
Rudi


  

Betrifft: AW: das ist falsch von: Bertram
Geschrieben am: 05.05.2008 16:14:07

Hallo Rudi,

das wußte ich noch nicht. Hab's bisher nicht gebraucht. Hab's gerade ausprobiert und siehe da....Du hast Recht:-)

Danke für die Korrektur.

Gruß
Bertram


  

Betrifft: AW: Combobox Ereignis von: Nico
Geschrieben am: 05.05.2008 15:56:18

Hi Jörg

Da du wahrscheinlich einen "Start"-Button für die Prozedur in der Userform hast, würde ich per VBA vorher den Wert der Combobox auslesen und darauf die entsprechende Prozedur starten.



...

If Me!DeineCombobox.Value = 1 Then

...



Gruß

Nico


  

Betrifft: AW: Combobox Ereignis von: Rudi Maintaire
Geschrieben am: 05.05.2008 16:00:23

Hallo,
etwa so:

Option Explicit

Dim blnInit As Boolean

Private Sub ComboBox1_Change()
  If blnInit = False Then
    'Code
  End If
End Sub

Private Sub UserForm_Activate()
  blnInit = True
  'code zum Befüllen der CB
  blnInit = False
End Sub


Gruß
Rudi

Eine Kuh macht Muh, viele Kühe machen Mühe


  

Betrifft: AW: Combobox Ereignis von: Renee
Geschrieben am: 05.05.2008 16:08:13

Hi Jörg,

So:

Im Initialize oder Activate der Userform:
ComboBox1.Tag = "X"
...dann abfüllen ... und ListIndex setzen ;-)
ComboBox1.Tag = ""
...

In der ComboBox:
Sub ComboBox1_Change()
   If ComboBox1.Tag = "X" then Exit Sub
....weitere change Befehle


GreetZ Renée


 

Beiträge aus den Excel-Beispielen zum Thema "Combobox Ereignis"