| OpenDatabase, OpenRecordset, AddNew, Delete, UpdateControls, MoveNext |
| |
| |
| Dim gFirstSet As Integer | Für erste Satznummer. |
| Dim gLastSet As Integer | Für letzte Satznmmer. |
| |
| Private Sub Form_Load() | Datenbank aktualisieren (falls Mehrfachzugriff). |
| Call refresh_me | |
| End Sub | |
| |
| Private Sub cmdRefresh_Click() | Formular entladen und sofort wieder laden: so werden |
| Unload frmAdressen | wieder ALLE Datensätze angezeigt. |
| frmAdressen.Show | |
| End Sub | |
| |
| Private Sub cmdNew_Click() | |
| dbAdressen.Recordset.AddNew | Neuen Datensatz hinzufügen. |
| txtNachname.Enabled = True | |
| txtVorname.Enabled = True | |
| chk_aktiv.Enabled = True | |
| txtNachname.SetFocus | |
| End Sub | |
| |
| Private Sub cmdUndo_Click() | |
| dbAdressen.UpdateControls | Ursprüngliche Werte wiederherstellen. |
| Call refresh_me | |
| End Sub | |
| |
| Private Sub dbAdressen_Reposition() | |
| gFirstSet = dbAdressen.Recordset.AbsolutePosition + 1 | Liefert aktuelle Satzposition. |
| dbAdressen.Caption = "Datensatz " & gFirstSet & " von " & gLastSet |
| End Sub | |
| |
| Private Sub txtSearch_KeyPress(KeyAscii As Integer) | |
| Dim dbSuchen As Database, Zeilen As Recordset, SQL As String |
| Select Case KeyAscii | |
| Case 13 | |
| Set dbSuchen = OpenDatabase("Adressen.mdb") | Datenbank öffnen. |
| Set Zeilen = dbSuchen.OpenRecordset("Adressenliste", dbOpenTable) | Tabelle öffnen. |
| SQL = "SELECT * From Adressenliste WHERE _ | SQL-Suchstring; txtSearch ist ein Textfeld auf dem Formular. |
| Nachname = '" & txtSearch & "'" | |
| dbAdressen.RecordSource = SQL | Abfrage durchführen. |
| Call refresh_me | |
| txtSearch.Text = txtSearch & " --> Kunde suchen: hier klicken" |
| End Select | |
| End Sub | |
| |
| Private Sub refresh_me() | |
| On Error GoTo nachricht | |
| dbAdressen.Refresh | Data-Control aktualisieren. |
| dbAdressen.Recordset.MoveLast | Datenbankgröße abtasten, um korrekte Datensatzposition |
| dbAdressen.Recordset.MoveFirst | auszugeben. |
| gFirstSet = dbAdressen.Recordset.AbsolutePosition + 1 | Liefert aktuelle Satzposition. |
| gLastSet = dbAdressen.Recordset.RecordCount | Liefert letzte Datensatznummer. |
| dbAdressen.Caption = "Datensatz " & gFirstSet & " von " & gLastSet |
| txtNachname.Enabled = True | |
| txtVorname.Enabled = True | |
| chk_aktiv.Enabled = True | |
| Exit Sub | |
| nachricht: | |
| MsgBox "Keine Datensätze gefunden" | |
| txtNachname.Enabled = True | |
| txtVorname.Enabled = True | |
| chk_aktiv.Enabled = True | |
| End Sub | |
| |
| Private Sub cmdDelete_Click() | |
| Dim Antwort As Integer | |
| On Error GoTo nachricht | |
| Antwort = MsgBox("Den Datensatz wirklich löschen?", vbQuestion + vbYesNo, "Datensatz löschen") |
| If Antwort = vbYes Then | |
| dbAdressen.Recordset.Delete | |
| dbAdressen.Recordset.MoveNext | |
| Call refresh_me | |
| txtNachname.SetFocus | |
| Else | |
| Exit Sub | Nicht löschen. |
| End If | |
| Exit Sub | |
| nachricht: | |
| MsgBox "Keine Datensätze gefunden" | |
| txtSearch.Text = "" | |
| txtNachname.Enabled = False | |
| txtVorname.Enabled = False | |
| chk_aktiv.Enabled = False | |
| txtSearch.SetFocus | |
| End Sub | |
| |
| Private Sub txtSearch_Click() | |
| txtSearch.Text = "" | |
| txtNachname.Enabled = False | |
| txtVorname.Enabled = False | |
| chk_aktiv.Enabled = False | |
| End Sub | |
| |
| Private Sub cmdClose_Click() | |
| Unload Me | |
| End Sub | |
| |