Microsoft Excel

Herbers Excel/VBA-Archiv

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

Combobox Change-Ereignis

Betrifft: Combobox Change-Ereignis von: Jürgen Donath
Geschrieben am: 01.08.2014 13:34:58

Hallo,
ich habe einer Combobox eine Rowsource von 10 Werten zugeordnet. Wird ein Wert ausgewählt, wird über das Change-Ereignis dieser Wert in eine Zelle geschrieben. Funktioniert prima, solange ich immer einen unterschiedlichen Wert auswähle. Aber es kommt auch der Fall vor, dass der gleiche Auswahlwert 2 oder 3mal hintereinander ausgewählt werden soll. Dann funktioniert die combobox1_Change() Prozedur natürlich nicht, weil ja keine Veränderung eingetreten ist.

Hat jemand eine Idee, wie ich trotzdem gleiche Werte hintereinander aus einer Combobox übernehmen kann?

Liebe Grüße
Jürgen

  

Betrifft: AW: Combobox Change-Ereignis von: Tino
Geschrieben am: 01.08.2014 14:20:24

Hallo,
also bei mir wird Change Ereignis ausgeführt sobald sich der Index der Auswahl ändert
auch wenn dies immer derselbe Inhalt ist?!

Gruß Tino


  

Betrifft: AW: Combobox Change-Ereignis von: {Boris}
Geschrieben am: 01.08.2014 14:28:49

Hi,

bei mir das Event auch nicht nochmal ausgelöst.
Bin jetzt kein VBA-Experte - aber ich würde das so in der Art lösen:

Option Explicit
Public Bol As Boolean
Private Sub ComboBox1_Change()
If Not Bol Then
    Range("B1") = Me.ComboBox1.Value
    MsgBox "Huhu!"
End If
Bol = True
Me.ComboBox1.Value = ""
Bol = False
End Sub
Nicht besonders sauber, aber es funktioniert ;-)

VG, Boris


  

Betrifft: AW: Combobox Change-Ereignis von: Robert
Geschrieben am: 01.08.2014 14:30:15

Hallo Jürgen,

Warum schreibst du den Wert über das Combobox_Change Ereignis in die Zeile?
Was passiert wenn man sich da mal verklickt? Falscher Wert?

Normalerweise macht man eine Dropdownauswahl in einer Combobox und einen Button, der dann mit dem ausgewählten Wert irgendwas anstellt.

Wenn du weiterhin aktivieren willst sobald das Dropdown benutzt wird(auch ohne Änderung), dann kannst du stattdessen Combobox_DropDownClosed verwenden.
Ist aber genauso für ein "Verklicken" anfällig.

Viele Grüße
Robert


  

Betrifft: AW: Combobox Change-Ereignis von: fcs
Geschrieben am: 01.08.2014 14:37:13

Hallo Jürgen,

du kannst zusätzlich den Doppelklick der Maus verwenden, um einen ausgewählten Wert nochmals in die Tabelle einzutragen.

Gruß
Franz

Beispiel:

Private Sub Combobox1_Auswerten()
  If Me.ComboBox1.ListIndex > -1 Then
    With Worksheets("h001")
      .Cells(.Rows.Count, 5).End(xlUp).Offset(1, 0).Value = Me.ComboBox1.Value
    End With
  Else
    MsgBox "Bitte erst Wert in Combobox auswählen"
  End If
End Sub

Private Sub ComboBox1_Change()
  Call Combobox1_Auswerten
End Sub

Private Sub ComboBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
  Call Combobox1_Auswerten
End Sub



  

Betrifft: AW: Combobox Change-Ereignis von: Jürgen Donath
Geschrieben am: 01.08.2014 15:55:12

Danke für eure Tipps. Der mit dem Doppelklick gefällt mir ganz gut, ebenso der, einen zusätzl. Button zur Datenübernahme einzurichten.


 

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