2016-04-07 10 views
1

Ich versuche, die Combobox mit Werten aus einem verketteten Feld in einer MS Access-Abfrage zu füllen. Das eingebettete Bild ist das, was gerade in der Dropdown-Box angezeigt wird und was in dem Feld angezeigt wird, wenn ein Wert ausgewählt wird.Wie verketteten Wert in MS Access Combobox angezeigt wird

Das Problem ist, dass ich nicht will, dass die Werte in der Dropdown-Box wie in Spalten angezeigt werden, sondern als verkettete Zeichenfolge. Also, anstatt ... TAYLOR | AVICHAI ... es sollte TAYLOR, AVICHAI sein. Und zusätzlich, wenn der Wert ausgewählt ist, dann würde, anstatt nur TAYLOR anzuzeigen, TAYLOR, AVICHAI angezeigt.

Ich habe versucht, jede Eigenschaft, die ich denken kann und versuchte Verkettung in der ursprünglichen Tabelle, die Abfrage und sogar in VBA-Code nach nur die beiden Felder aus der Datenbank zu greifen.

Irgendwelche Hilfe? Concatenated View

Antwort

0

Die Dokumentation sagt: „In a combo box, the first visible column is displayed in the text box portion of the control.

Genauer gezeigt der Wert der Wert von ist die erste Säule mit einer Nicht-Null-Breite.

Damit Ihr Ziel zu erreichen, ändern Sie Ihre Abfrage, damit es gibt die folgende:

Taylor, Avichai | Taylor | Avichai 
Raines, Patricia | Raines | Patricia 
... 

Dann in den combox Feld Eigenschaften setzen

  • die Anzahl der Spalten bis 3 und
  • die Spaltenbreiten so, dass die erste Spalte ist sehr klein (aber nicht Null).
+0

Vielen Dank. Das macht sehr viel Sinn, schien aber in meinem Fall nicht zu funktionieren ... Mein Code füllt die Combobox durch Schleifen ... 'Do Until rs.EOF me.compobox.value = rs! FullName ... rs. movenext '... wobei FullName ein verkettetes Feld in den Qry rs ist. Ich denke, das ist das Problem ... ich muss die Liste stattdessen mit Tabellen füllen. –

2

Sie müssen die Werte zusammen in Ihrer Abfrage verketten und dieses Feld im Kombinationsfeld anzeigen.

SELECT peopleID, lastName & ", " & firstName AS name FROM tblPeople 

Und dann in Ihrem Format Registerkarte Ihres Combobox Set:

  • Spalte 0";1"
  • zu 2
  • Spaltenbreiten zählen

Dies verursacht nur Ihre Spalte mit einer Breite (die kombinierten Namen), die im Drop-down-Menü und bei Auswahl angezeigt werden sollen.

+0

Danke. Das behebt das Problem nicht genau. Mein Code füllt die Combobox durch Schleifen: 'Do Until rs.EOF me.compobox.value = rs! FullName ... rs.movenext' ... wobei FullName ein verkettetes Feld in der Liste ist. Ich denke, das ist das Problem ... ich muss die Liste stattdessen mit Tabellen füllen. –

+0

Könnten Sie bitte Ihren vollständigen Code posten, der das Listenfeld füllt? – Zaider

Verwandte Themen