Discussion:
Wert eines Kombinationsfeldes übernehmen
(zu alt für eine Antwort)
Peter Hamm
2005-09-02 06:25:47 UTC
Permalink
Hallo zusammen,

ich habe in meiner UserForm ein Kombinationsfeld angelegt. Die
Einträge werden aus einer mysql-Datenbank geladen. Die Anzeige der
Einträge in der Kombobox funktionieren auch.

So sieht der Code aus:
---------------------------------------
For i = 1 To rstdisziplin.RecordCount
With HinzufuegenMaske.kombiDisziplin
.AddItem rstdisziplin.Fields(1)
rstdisziplin.MoveNext
End With
Next i
----------------------------------------
Wenn ich nun einen Eintrag in der Kombobox auswähle, wie kann ich
diesen Wert weiterverwenden, also in einer Variablen abspeichern? Ich
habe es zunächst folgendermaßen probiert:

neuDisziplin = HinzufuegenMaske.kombiDisziplin.Value

Wenn ich den Wert von neuDisziplin in einer Msgbox testweise ausgeben
möchte, ist diese jedoch leer.

Wie kann ich den ausgewählten ermitteln?

Gruß,
Peter
Christian Freßdorf
2005-09-02 06:44:44 UTC
Permalink
Hallo Peter,
Post by Peter Hamm
Wenn ich den Wert von neuDisziplin in einer Msgbox testweise ausgeben
möchte, ist diese jedoch leer.
Du brauchst dazu den ListIndex der Combobox und die List-Eigenschaft:

Msgbox Combobox.List(Combobox.ListIndex)

liefert den Eintrag in der Combobox
--
Gruß Christian
~~~~~~~~~~~~
!Gebt Rückmeldung wenn Ihr weiterhin Antworten möchtet!
=> http://www.fruiture.de/perl/questions.html#intro
=> http://word.mvps.org
Peter Hamm
2005-09-02 08:05:36 UTC
Permalink
Hallo Christian,

danke für die Antwort. Wenn ich nun

MsgBox kombiDisziplin.List(kombiDisziplin.ListIndex)

eingebe, erscheint die Fehlermeldung

"Laufzeitfehler '381': Eigenschaft List konnte nicht abgerufen werden.
Index des Eigenschaftenfelds ungültig."

Ich habe den Codeteil
-------------------------------------------------------
For i = 1 To rstdisziplin.RecordCount
With HinzufuegenMaske.kombiDisziplin
.AddItem rstdisziplin.Fields(1)
rstdisziplin.MoveNext
End With
Next i
-------------------------------------------------
schon gedebuggt. Die Werte werden aus den Tabellen richtig übernommen.

Gruß,
Peter
Christian Freßdorf
2005-09-02 08:14:37 UTC
Permalink
Hallo Peter,
Post by Peter Hamm
MsgBox kombiDisziplin.List(kombiDisziplin.ListIndex)
"Laufzeitfehler '381': Eigenschaft List konnte nicht abgerufen werden.
Index des Eigenschaftenfelds ungültig."
poste bitte ein paar mehr Zeilen, vor allem den Deklarationsteil der
Variablen.
Und wo steht obige Zeile genau?

Was liefert denn
Msgbox kombiDisziplin.ListCount
?
--
Gruß Christian
=> http://word.mvps.org
Peter Hamm
2005-09-02 08:22:57 UTC
Permalink
Hallo Christian,

sorry, war mein Fehler. Habs grad selber rausgefunden.
Ich hab die MsgBox zunächst in der UserForm_Initialize()-Prozedur
geschrieben. Wenn ich sie nun in der
cmdNeuerDatensatzSpeichern_Click()-Prozedur reinschreibe, also nachdem
man den Wert in der KomboBox ausgewählt hat und auf den
cmdNeuerDatensatzSpeichern-Button klickt, wird der Wert richtig
ausgegeben. Vielen Dank nochmal.

Gruß,
Peter

Loading...