Wie Sie auf das Kombinationsfeld in einer Abfrage zugreifen
Wissen, wie man ein Kombinationsfeld zugreifen und dann in einer Abfrage verwenden ist nützlich bei der Entwicklung von EDV-Anwendungen. Beispielsweise kann in Microsoft Access ein Kombinationsfeld für den Benutzer zum Bearbeiten von Daten erleichtern. Verwenden das Visual Basic für Applikationen (VBA) Computer-Programmiersprache, können Sie ein Formular, eine Tabelle erstellen und verwenden Sie dann die Tabelle Daten ein Kombinationsfeld hinzu.
Anweisungen
1 Starten Sie Microsoft Office Access 2007 zu, wählen Sie "Leere Datenbank" und klicken Sie auf "Erstellen".
2 Klicken Sie auf der Registerkarte "Erstellen", und wählen Sie dann "Formularentwurf" auf ein neues Formular erstellen. Klicken Sie auf "Kombinationsfeld" im Bereich "Steuerelemente" dann klicken Sie auf das Formular, und ziehen Sie es um ein neues Kombinationsfeld-Steuerelement zu erstellen. Bereich "Steuerelemente" auf dem Formular eine neue Schaltfläche Hinzufügen klicken Sie an "Button".
3 Maustaste "Command0" und dann auf "Eigenschaften". Klicken Sie auf die Registerkarte "Ereignis" und wählen Sie "[Ereignisprozedur]" neben "Zu klicken." Klicken Sie auf das Auslassungszeichen (…) um das Fenster "Microsoft Visual Basic" öffnen.
4 Kopieren Sie und fügen Sie den folgenden Code unter "Private Sub Command0_Click()":
Dim StrSQL As String
StrSQL = "CREATE TABLE DataTable (ComboIndx Zahl, RowData TEXT);"
DoCmd.RunSQL (StrSQL)
StrSQL = "INSERT INTO DataTable (ComboIndx, RowData)"
StrSQL = StrSQL & "VALUES (1,"Row1");"
DoCmd.SetWarnings False
DoCmd.RunSQL (StrSQL)
StrSQL = "INSERT INTO DataTable (ComboIndx, RowData)"
StrSQL = StrSQL & "VALUES (2, 'Row2');"
DoCmd.SetWarnings False
DoCmd.RunSQL (StrSQL)
StrSQL = "INSERT INTO DataTable (ComboIndx, RowData)"
StrSQL = StrSQL & "Werte (3, 'Row2');"
DoCmd.SetWarnings False
DoCmd.RunSQL (StrSQL)
StrSQL = "Select dataTable.* aus DataTable"
StrSQL = StrSQL & "WHERE dataTable.rowData = 'Row2';"
Me.Combo0.RowSource = StrSQL
5 Wechseln Sie zurück in das Microsoft Access-Fenster, mit der rechten Maustaste "Combo0" und klicken Sie dann auf "Eigenschaften". Klicken Sie die "Event"-Tab wählen. [Ereignisprozedur] "neben"Nach Aktualisierung". Klicken Sie auf das Auslassungszeichen (…) um das Fenster "Microsoft Visual Basic" öffnen.
6 Kopieren Sie und fügen Sie den folgenden Code unter "Private Sub Combo0_AfterUpdate()":
Dim Dbs als Datenbank
Dim Rst als Recordset
Dim ComboString As Integer
Dim SQLstr As String
Eingestellt von Dbs = CurrentDb
ComboString = Me.Combo10.Text
SQLstr = "SELECT dataTable.rowData FROM DataTable"
SQLstr = SQLstr & "WHERE-dataTable.ComboIndx =" & (ComboString) & ";"
Festlegen von Rst = Dbs. OpenRecordset(SQLstr)
RST. MoveLast
RST. MoveFirst
MsgBox "Daten für diesen Kombi-Index ist:" & Rst. Fields(0). Wert
RST. Schließen
DBS. Schließen
7 Schließen Sie das Fenster "Microsoft Visual Basic". Maustaste auf "Form1", und klicken Sie auf "Formularansicht." Klicken Sie auf "Command0" das Kombinationsfeld mit Daten zu füllen.
8 Wählen Sie einen Wert im Kombinationsfeld. Sie sehen die Daten für diesen Index in einem Meldungsfeld angezeigt.