Sužinokite, kaip pridėti gimtadienio priminimus į savo Access duomenų bazę. Būkite informuoti, jei artėja jūsų kliento ar darbuotojo gimtadienis, kad galėtumėte išsiųsti jiems šiltą sveikinimą.
Gimtadienio sveikinimų siuntimas gali būti puikus būdas užmegzti ryšį ir sustiprinti santykius su klientu ar darbuotoju. Jei tvarkote „Access“ duomenų bazę, kurioje yra klientų/darbuotojų įrašų, gali būti puiku, jei laikas nuo laiko jums bus pranešta, jei artėja kliento ar darbuotojo gimtadienis. Šioje pamokoje sužinosite, kaip sukurti funkciją, kuri praneš apie kažkieno ypatingą dieną, kai atidarysite duomenų bazę.
Atsisiųsti dabar
Jei norite kuo greičiau pradėti naudoti šią funkciją, galite:
Atsisiųskite pavyzdinę duomenų bazę su VBA kodais dabar
Kitu atveju, jei norite pasidaryk pats, galite perskaityti toliau pateiktą turinį.
Būtinas reikalavimas
Šioje pamokoje daroma prielaida, kad duomenų bazėje yra lentelė, kurioje yra šie 3 laukai: vardas, pavardė ir gimtadienis.
Veiksmai, kaip pridėti gimtadienio priminimus „Access“ duomenų bazėje
- Sukurkite naują lentelę ir pavadinkite ją Gimtadienio šventės. Tai bus gimtadienio šventės dalyvių sąrašo saugykla. Pridėkite 3 laukus, kaip parodyta žemiau. Nereikia pirminio rakto.
- Sukurkite formą „BithdayCelebrants“. Ši forma pasirodys atidarius duomenų bazę, jei bus artėjantys gimtadieniai.
- Naršymo srityje pasirinkite lentelę Birthday Celebrants.
- Eikite į Sukurti > Forma.
- Viena forma bus automatiškai sukurta jums.
Kadangi ketiname rodyti gimtadienio šventės dalyvių sąrašą, siūlyčiau pakeisti numatytąjį formos rodinį į duomenų lapą arba tęstines formas. Tokiu būdu galite greitai peržiūrėti sąrašą.
- Būdami dizaino rodinyje pasirinkite formą.
- Atidarykite ypatybių lapą (ALT + F11)
- Eikite į Formatas > Numatytasis vaizdas.
- Pasirinkite norimą rodinį – duomenų lapą arba tęstines formas.
Jei pasirinkote Nepertraukiamas formas, redaguokite dizainą, kad jis atitiktų jūsų pageidavimus. Štai kaip atrodo mano:
Redagavau Gimtadienio teksto laukelio formatą, kad reikšmės būtų rodomos ilgos datos formatu. Be to, atlikau šiuos formos ypatybių atnaujinimus:
- Leisti papildyti: Ne
- Leisti ištrinti: Ne
- Leisti redaguoti: Ne
Baigę uždarykite formą ir išsaugokite ją kaip frm_BirthdayCelebrants.
- Pridėkite gimtadienio priminimo kodą.
- Pridėkite naują modulį.
- Tai atidarys VBA redaktorių.
- Pridėkite šį kodą ir pakeiskite jį pagal savo poreikius.
- Pridėkite naują modulį.
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
Atkreipkite dėmesį, kad aukščiau pateiktame kode naudojama užklausa, kuri gauna šios dienos gimtadienio švęstojų sąrašą. Jei norite gauti sąrašą žmonių, kurių gimimo diena artėja einamąjį mėnesį, naudokite toliau pateiktą užklausą.
'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"
- Galiausiai sukursime „AutoExec“ makrokomandą. Tai paleis kodą atidarius duomenų bazę.
- Eikite į Sukurti > Makrokomandas.
- pasirinkti Vykdyti kodą iš išskleidžiamojo sąrašo.
- Dėl funkcijos pavadinimo parašykite Vykdykite gimimo dienos priminimus ().
- Išsaugokite makrokomandą kaip „AutoExec“ ir spustelėkite Gerai.
- Dabar išbandykite savo gimtadienio priminimą.
Uždarykite duomenų bazę ir atidarykite ją iš naujo. Jei artėja gimtadieniai, turėtų pasirodyti gimtadienio priminimo forma. Jei ne, duomenų bazė veiks kaip įprasta.
Greitas priminimas
Dabar trumpas priminimas. Jei vieną dieną negalėsite atidaryti savo duomenų bazės, nepanikuokite. Imkitės būtinų veiksmų, kad jį atkurtumėte. Jei vis tiek negalite, išbandykite trečiosios šalies programinę įrangą, kuri tai padarys pataisyti prieigą. Dar yra vilties.
Autoriaus įvadas:
Jayme'as Stackas yra duomenų atkūrimo ekspertas DataNumen, Inc., kuri yra pasaulyje duomenų atkūrimo technologijų lyderė, įskaitant sql atkūrimas ir Excel atkūrimo programinės įrangos produktai. Norėdami gauti daugiau informacijos, apsilankykite WWW.datanumen.com




