Erfahren Sie, wie Sie Ihrer Access-Datenbank Geburtstagserinnerungen hinzufügen können. Seien Sie informiert, wenn der Geburtstag Ihres Kunden oder Mitarbeiters bevorsteht, damit Sie ihm Ihren herzlichen Gruß senden können.
Das Senden von Geburtstagsgrüßen kann eine großartige Möglichkeit sein, die Beziehung zu einem Kunden oder Mitarbeiter zu verbinden und zu stärken. Wenn Sie eine Access-Datenbank mit Kunden- / Mitarbeiterdatensätzen bearbeiten, kann es hilfreich sein, von Zeit zu Zeit benachrichtigt zu werden, wenn der Geburtstag eines Kunden oder Mitarbeiters bevorsteht. In diesem Tutorial erfahren Sie, wie Sie eine Funktion erstellen können, die Sie über den besonderen Tag einer Person informiert, sobald Sie die Datenbank öffnen.
Laden Sie den WHS jetzt kostenlos herunter
Wenn du s willsttarUm die Funktion so schnell wie möglich zu nutzen, können Sie:
Laden Sie jetzt die Beispieldatenbank mit VBA-Codes herunter
Andernfalls können Sie den folgenden Inhalt lesen, wenn Sie selbst basteln möchten.
Voraussetzung
In diesem Lernprogramm wird davon ausgegangen, dass Ihre Datenbank eine Tabelle enthält, die diese drei Felder enthält: Vorname, Nachname und Geburtstag.
Schritte zum Hinzufügen von Geburtstagserinnerungen in der Zugriffsdatenbank
- Erstellen Sie eine neue Tabelle und benennen Sie sie Geburtstagsfeier. Dies wird als Aufbewahrungsort für die Liste der Geburtstagsfeierlichkeiten dienen. Fügen Sie 3 Felder hinzu, wie unten gezeigt. Kein Primärschlüssel erforderlich.
- Erstellen Sie ein Formular für BirthdayCelebrants. Dieses Formular wird beim Öffnen der Datenbank angezeigt, wenn Geburtstage anstehen.
- Wählen Sie im Navigationsbereich die Tabelle BirthdayCelebrants aus.
- Gehen Sie zu Erstellen> Formular.
- Ein einzelnes Formular wird automatisch für Sie erstellt.
Da wir eine Liste der Geburtstagsfeiernden anzeigen, würde ich vorschlagen, dass Sie die Standardansicht des Formulars entweder in Datenblatt oder in fortlaufende Formulare ändern. Auf diese Weise erhalten Sie einen schnellen Überblick über die Liste.
- Wählen Sie in der Entwurfsansicht das Formular aus.
- Öffnen Sie das Eigenschaftenblatt (ALT + F11)
- Gehen Sie zu Format> Standardansicht.
- Wählen Sie die gewünschte Ansicht aus - entweder Datenblatt oder fortlaufende Formulare.
Wenn Sie fortlaufende Formulare ausgewählt haben, bearbeiten Sie das Design entsprechend Ihren Einstellungen. So sehen meine aus:
Ich habe das Format des Textfelds "Geburtstag" so bearbeitet, dass die Werte im Format "Langes Datum" angezeigt werden. Außerdem habe ich die folgenden Eigenschaften des Formulars aktualisiert:
- Ergänzungen zulassen: Nein
- Löschungen zulassen: Nein
- Änderungen zulassen: Nein
Wenn Sie fertig sind, schließen Sie das Formular und speichern Sie es unter frm_BirthdayCelebrants.
- Fügen Sie den Code für die Geburtstagserinnerung hinzu.
- Fügen Sie ein neues Modul hinzu.
- Dadurch wird der VBA-Editor geöffnet.
- Fügen Sie den folgenden Code hinzu und ändern Sie ihn an Ihre Anforderungen.
- Fügen Sie ein neues Modul hinzu.
Public Function RunBirthdayReminders()
Dim qry As String, fld_fName As String, fld_lName As String, fld_birthday As String, tbl As String
Dim db As DAO.Database, rst As DAO.Recordset
'TO DO: Update the ff. variables with the actual name of your table and fields
tbl = "Members" 'table containing your client/employee reocrds
fld_fName = "FirstName" 'first name field
fld_lName = "LastName" 'last name field
fld_birthday = "Birthday" 'birthday field
Set db = CurrentDb
'delete current record(s) from BirthdayCelebrants table
DoCmd.SetWarnings False
DoCmd.RunSQL ("DELETE FROM BirthdayCelebrants")
DoCmd.SetWarnings True
'insert new record(s) in BirthdayCelebrants table using a query that gets list of people celebrating their birthday today.
qry = "INSERT INTO BirthdayCelebrants " & _
"SELECT " & fld_fName & ", " & fld_lName & ", " & fld_birthday & " FROM " & tbl & " WHERE " & _
"Month(" & fld_birthday & ")=Month(Date()) AND Day(" & fld_birthday & ")=Day(Date())"
DoCmd.SetWarnings False
DoCmd.RunSQL (qry)
DoCmd.SetWarnings True
Set rst = db.OpenRecordset("SELECT * FROM BirthdayCelebrants")
If Not rst.EOF Then
DoCmd.OpenForm ("frm_BirthdayCelebrants")
End If
Set db = Nothing
Set rst = Nothing
End Function
Bitte beachten Sie, dass der obige Code eine Abfrage verwendet, die eine Liste der Geburtstagsfeierlichkeiten für den aktuellen Tag abruft. Wenn Sie eine Liste der Personen erhalten möchten, deren Geburtstag für den aktuellen Monat ansteht, verwenden Sie stattdessen die folgende Abfrage.
'insert new record(s) in BirthdayCelebrants table using a query that gets list of people whose birthday is coming up for this month.
qry = "INSERT INTO BirthdayCelebrants " & _
"SELECT " & fld_fName & ", " & fld_lName & ", " & fld_birthday & " FROM " & tbl & " WHERE " & _
"Month(" & fld_birthday & ")=Month(Date()) AND Day(" & fld_birthday & ")>=Day(Date())" & _
" ORDER BY Day(" & fld_birthday & ") ASC"
- Schließlich erstellen wir ein AutoExec-Makro. Dadurch wird der Code beim Öffnen der Datenbank ausgeführt.
- Gehen Sie zu Erstellen> Makro.
- Wählen Sie RunCode aus der Dropdown-Liste.
- Schreiben Sie für den Funktionsnamen RunBirthdayReminders ().
- Speichern Sie das Makro als AutoAusführen und klicken Sie auf OK.
- Testen Sie jetzt Ihre Geburtstagserinnerung.
Schließen Sie die Datenbank und öffnen Sie sie erneut. Wenn bevorstehende Geburtstage anstehen, sollte das Formular zur Geburtstagserinnerung angezeigt werden. Wenn keine vorhanden ist, wird die Datenbank wie gewohnt ausgeführt.
Schnelle Erinnerung
Nun zu einer kurzen Erinnerung. Wenn Sie eines Tages Ihre Datenbank nicht öffnen können, geraten Sie nicht in Panik. Führen Sie die erforderlichen Schritte aus, um es wiederherzustellen. Wenn Sie dies immer noch nicht können, versuchen Sie es mit Software von Drittanbietern Zugriff korrigieren. Es gibt noch Hoffnung.
Einführung des Autors:
Jayme Stack ist ein Experte für Datenwiederherstellung in DataNumen, Inc., das weltweit führend bei Datenwiederherstellungstechnologien ist, einschließlich SQL-Wiederherstellung und Excel-Wiederherstellungssoftwareprodukte. Für weitere Informationen besuchen Sie www.datanumen.com €XNUMX




