2017-05-29 2 views
0

Ich habe ein Listenfeld erstellt und es über die grafische Benutzerschnittstelle zu meinem Benutzerformular hinzugefügt. Das Listenfeld ist single select und ist eine Spalte. 3 Optionen wurden über die Zeilenquelle hinzugefügt; die Werte sind „“, „Jimmy“, „Jack“ und ich habe folgendes vba eine Option ausgewählt wurde VBA zeigt an, dass Listbox immer Null ist, auch wenn die Option ausgewählt ist

If IsNull(Me!List10) Then 
    MsgBox "Please Select A Value!", vbOKOnly 
    Me.List10.SetFocus 
    Exit Sub 
Else 
    selectedoption = Me!List10 
End If 
, um sicherzustellen, Nun ist die Frage, die ich habe, ist, selbst wenn ein Wert, der die MsgBox noch ausgewählt wird, wird die Information Benutzer, um einen Wert auszuwählen, so gibt es keine Möglichkeit zu übergeben! Was wäre die richtige Syntax, um zu überprüfen, ob eine Listbox null ist?

EDIT
Diese Syntax wird funktionieren, wenn der Benutzer den Knopf auf dem Benutzerformular klickt, während das Listenfeld noch ausgewählt ist (Fokus hat), aber es scheint, dass die Syntax, um den Wert, wenn das Listenfeld nicht beibehalten kann hat keinen Fokus ...

+0

Was ist der Wert der gebundenen Eigenschaft der Listbox? Es muss 1 sein sonst wird die Listbox immer Null zurückgeben. – mdialogo

+0

@ mdialogo - es ist auf 1 gesetzt. Das Listenfeld gibt den entsprechenden Wert zurück, wenn es einen Fokus hat, wenn die Schaltfläche gedrückt wird. Wenn das Listenfeld keinen Fokus hat, gibt es null zurück. – IcyPopTarts

+0

Da ist noch etwas anderes los. Sobald Sie auf die Schaltfläche klicken, verliert die Listbox den Fokus. Daher denke ich nicht, dass Fokus das Problem ist. bearbeiten, siehe unten. – wazz

Antwort

0

Ich habe nicht das erste Mal bemerkt, dass der erste Eintrag auf Ihrer Werteliste "" ist.

Ein "Fix" (Hack) wäre, ein Leerzeichen "" hinzuzufügen.

Das Problem muss nur auftreten, wenn dieser erste Eintrag ausgewählt ist. Muss es da sein?

Verwandte Themen