2017-02-10 1 views
1

Ich möchte eine mehrspaltige Combobox folgendermaßen füllen. Ich habe ein Array mit den Mitarbeiter-ID-Nummern von mehreren Mitarbeitern. Eg, Eid $ (1) = "001", Eid $ (2) = "005", Eid $ (3) = "214"Access 2007 SQL - Werte aus der Tabelle abrufen, die mit Werten in einem Array übereinstimmen?

Jetzt will ich SQL etwas wie folgt verwenden:

Me.Combo1.RowSource = "SELECT empid, Nachname, Vorname, Alter FROM Employees ORDER BY Nachname ASC WHERE empid = ein Wert in Array Eid $()"

ich weiß, dies nicht die korrekte Syntax, aber ich hoffe, es erklärt, was ich versuche zu tun.

Nach der Ausführung wird die Combobox Werte wie dieses:

005 Able Charles 52

214 Baker James 31

001 Smith, Nancy 46

Jeden Tag wird das Array eine andere Gruppe von Mitarbeiter-IDs.

Gibt es eine Möglichkeit, dies zu erreichen?

+0

Dump Ihr ​​Array an die Tabelle und verbinden Sie diese Tabelle mit Employees von Empid –

+0

Das klingt gut. Es wäre toll, wenn Sie mir den Code für die zwei Schritte zeigen könnten - Dumping an einen Tisch; und beitreten. Vielen Dank. – CurtisD

Antwort

0

Ja, es ist möglich. Das Füllen der Combobox in Ihrem form_load-Ereignis wäre eine Möglichkeit.

Private Sub Form_Load() 

Dim arrayValue As Integer 
arrayValue = Eid$() 

Me.Combo1.RowSource="SELECT empid, lastname, firstname, age FROM Employees WHERE empid = " & arrayValue & " ORDER BY lastname ASC;" 

End Sub 

Ich bin nicht ganz sicher, ob eine rowsource eine Abfrage String sein kann. Ich weiß, dass das Erstellen eines Re-Cord-Sets zuerst und das Festlegen des Re-Cord-Sets als die Quellquelle sicher funktioniert.

Verwandte Themen