Hello,
ich hab ein Problem mit einer ComboBox auf einem Access Formular. Ich würde gerne hören, dass der Fehler zwischen den Kopfhörern liegt, aber im Moment seh ich noch kein Land...
Folgendes Konstrukt:
Auf einem Formular befindet sich eine SQL-gebundene ComboBox. Die SQL-Abfrage kann als Listenwert NULL zurückliefern. HÄTTE(!) die ComboBox diesen Eintrag ausgewählt, würde mit .value auch korrekt NULL liefern.
Jetzt ist es aber so, dass die Box unter bestimmten Umständen unsichtbar wird, der Benutzer also keine Möglichkeit hat einen Eintrag auszuwählen. Ich hätte aber trotzdem gerne den Wert des ersten Listeneintrags.
Nun gilt unter Access (2002) offenbar folgendes:
- Man darf den ListIndex einer unsichtbaren ComboBox nicht setzen, damit kann man den Eintrag nicht aktuell machen um .value zu lesen
- .ItemData(0) liefert, obwohl laut Hilfe als Variant deklariert, nicht NULL sondern "" zurück. "" ist für mich aber alles andere als NULL sondern vielmehr ein weiterer realistischer Wert.
Gibt es eine schöne Lösung für das Problem? Als Workaround funktionieren
- Abfrage parallel zur ComboBox nochmal selber machen und den ersten Wert lesen
- Box kurz einblenden, ListIndex setzen, Value lesen, ausblenden*
MfG
Rouven
* klappt leider auf Grund einer weiteren Eigenheit von Access nicht: Ich habe KEIN(!) weiteres Control auf dem Formular, das den Fokus tragen darf. ListIndex setzen darf man nur, wenn die Combo den Fokus hat, dann darf man sie aber nicht mehr unsichtbar machen. *seufz*
-------------------
Inter Arma Enim Silent Leges -- Cicero