Cara Menambah Peringatan Hari Lahir di Pangkalan Data Akses Anda

Kongsi Sekarang:

Ketahui bagaimana anda boleh menambahkan peringatan ulang tahun ke pangkalan data Access anda. Dimaklumkan jika hari jadi pelanggan atau pekerja anda akan tiba sehingga anda dapat mengirim ucapan hangat kepada mereka.

Menghantar ucapan selamat ulang tahun boleh menjadi kaedah yang baik untuk menghubungkan dan mengeratkan hubungan dengan pelanggan atau pekerja. Sekiranya anda mengendalikan pangkalan data Access yang mengandungi rekod pelanggan / pekerja, ada baiknya diberitahu dari semasa ke semasa jika hari jadi pelanggan atau pekerja akan tiba. Dalam tutorial ini, anda akan belajar bagaimana anda dapat membuat fungsi yang akan memberitahu anda tentang hari istimewa seseorang ketika anda membuka pangkalan data.

Muat Turun Sekarang

Jika anda ingin mula menggunakan ciri ini secepat mungkin, anda boleh:

Muat turun Contoh Pangkalan Data dengan Kod VBA Sekarang

Jika tidak, jika anda mahu DIY, anda boleh membaca kandungannya di bawah.

Prasyarat

Tutorial ini menganggap bahawa anda mempunyai jadual dalam pangkalan data anda yang mengandungi 3 bidang ini: nama pertama, nama belakang dan hari lahir.

Langkah Menambah Peringatan Hari Lahir di Pangkalan Data Akses

  1. Buat jadual baru dan beri nama Hari LahirCelebrants. Ini akan berfungsi sebagai repositori senarai perayaan ulang tahun. Tambah 3 medan seperti gambar di bawah. Tidak memerlukan kunci utama.Sambutan Hari Lahir Meja
  2. Buat borang untuk BirthdayCelebrants. Borang ini akan muncul semasa membuka pangkalan data jika ada ulang tahun yang akan datang.Buat Borang Untuk Hari LahirCelebrants
  • Di panel navigasi, pilih jadual BirthdayCelebrants.
  • Pergi ke Buat> Borang.
  • Borang Tunggal akan dibuat secara automatik untuk anda.

Oleh kerana kami akan memaparkan senarai perayaan ulang tahun, saya mencadangkan agar anda menukar Paparan Lalai borang menjadi Lembaran Data atau Borang Berterusan. Dengan cara ini, anda boleh mendapatkan gambaran keseluruhan ringkas mengenai senarai tersebut.Tukar Paparan Lalai Borang

  • Semasa dalam paparan reka bentuk, pilih borang.
  • Buka Helaian Hartanah (ALT + F11)
  • Pergi ke Format> Paparan Lalai.
  • Pilih paparan yang anda mahukan - sama ada Lembaran Data atau Bentuk Berterusan.

Sekiranya anda memilih Borang Berterusan, edit reka bentuknya agar sesuai dengan pilihan anda. Begini rupa saya:Pilih Bentuk Berterusan Dan Edit Reka Bentuknya

Saya telah mengedit format kotak teks Birthday sehingga nilai akan dipaparkan dalam format Tarikh Panjang. Juga, saya membuat kemas kini berikut mengenai sifat borang:

  • Benarkan Penambahan: Tidak
  • Benarkan Penghapusan: Tidak
  • Benarkan Suntingan: Tidak

Setelah selesai, tutup borang dan simpan sebagai frm_Perayaan Hari Jadi.

  1. Tambahkan kod untuk peringatan hari lahir.
    • Tambahkan modul baru.Tambah Modul Baru
    • Ini akan membuka Editor VBA.
    • Tambahkan kod berikut dan ubah mengikut keperluan anda.
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

Harap maklum bahawa kod di atas menggunakan pertanyaan yang mendapat senarai perayaan ulang tahun untuk hari ini. Sekiranya anda ingin mendapatkan senarai orang yang hari lahir akan datang untuk bulan semasa, gunakan pertanyaan berikut.

'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"
  1. Akhirnya, kita akan membuat makro AutoExec. Ini akan menjalankan kod semasa membuka pangkalan data.Buat Makro AutoExec
    • Pergi ke Buat> Makro.
    • pilih RunCode dari senarai jatuh turun.
    • Untuk Nama Fungsi, tulis RunBirthdayReminders ().
    • Simpan makro sebagai AutoExec dan klik OK.
  1. Sekarang, uji Peringatan Hari Lahir anda.

Tutup pangkalan data dan buka semula. Sekiranya terdapat ulang tahun yang akan datang, borang peringatan ulang tahun akan muncul. Sekiranya tiada, pangkalan data akan berjalan seperti biasa.

Peringatan Pantas

Sekarang untuk peringatan cepat. Sekiranya suatu hari, anda tidak dapat membuka pangkalan data anda, jangan panik. Ambil langkah yang diperlukan untuk memulihkannya. Sekiranya anda masih tidak dapat, cubalah perisian pihak ketiga yang sesuai memperbaiki Akses. Masih ada harapan.

Pengenalan Pengarang:

Jayme Stack adalah pakar pemulihan data di DataNumen, Inc., yang merupakan pemimpin dunia dalam teknologi pemulihan data, termasuk pemulihan sql dan produk perisian pemulihan yang unggul. Untuk maklumat lebih lanjut, lawati www.datanumen.com

Kongsi Sekarang:

Ruangan komen telah ditutup.