Cách thêm lời nhắc sinh nhật vào cơ sở dữ liệu truy cập của bạn

Chia sẻ ngay bây giờ:

Tìm hiểu cách bạn có thể thêm lời nhắc sinh nhật vào cơ sở dữ liệu Access của mình. Được thông báo nếu sắp đến sinh nhật của khách hàng hoặc nhân viên của bạn để bạn có thể gửi cho họ lời chúc mừng nồng nhiệt.

Gửi lời chúc mừng sinh nhật có thể là một cách tuyệt vời để kết nối và củng cố mối quan hệ với khách hàng hoặc nhân viên. Nếu bạn đang xử lý cơ sở dữ liệu Access chứa các bản ghi khách hàng/nhân viên, thì thật tuyệt nếu thỉnh thoảng được thông báo nếu sắp đến sinh nhật của khách hàng hoặc nhân viên. Trong hướng dẫn này, bạn sẽ học cách tạo một chức năng sẽ thông báo cho bạn về ngày đặc biệt của ai đó ngay khi bạn mở cơ sở dữ liệu.

Tải xuống Ngay

Nếu bạn muốn bắt đầu sử dụng tính năng này càng sớm càng tốt, bạn có thể:

Tải xuống cơ sở dữ liệu mẫu với mã VBA ngay bây giờ

Còn không, nếu bạn muốn DIY, bạn có thể đọc nội dung bên dưới.

Điều kiện tiên quyết

Hướng dẫn này giả định rằng bạn có một bảng trong cơ sở dữ liệu chứa 3 trường sau: tên, họ và ngày sinh.

Các bước để thêm lời nhắc sinh nhật trong cơ sở dữ liệu Access

  1. Tạo một bảng mới và đặt tên cho nó Sinh NhậtCelebrants. Điều này sẽ đóng vai trò là kho lưu trữ danh sách những người tổ chức sinh nhật. Thêm 3 trường như hình bên dưới. Không cần khóa chính.Bảng Sinh NhậtNgười Kỷ Niệm
  2. Tạo biểu mẫu cho BirthdayCelebrants. Biểu mẫu này sẽ bật lên khi mở cơ sở dữ liệu nếu có ngày sinh nhật sắp tới.Tạo biểu mẫu cho người kỷ niệm sinh nhật
  • Trong ngăn dẫn hướng, hãy chọn bảng BirthdayCelebrants.
  • Chuyển đến Tạo > Biểu mẫu.
  • Một Biểu mẫu Đơn sẽ được tạo tự động cho bạn.

Vì chúng tôi sẽ hiển thị danh sách những người tổ chức sinh nhật, tôi khuyên bạn nên thay đổi Dạng xem mặc định của biểu mẫu thành Biểu dữ liệu hoặc Biểu mẫu liên tục. Bằng cách này, bạn có thể có một cái nhìn tổng quan nhanh về danh sách.Thay đổi chế độ xem mặc định của biểu mẫu

  • Trong khi ở chế độ xem thiết kế, hãy chọn biểu mẫu.
  • Mở Bảng thuộc tính (ALT + F11)
  • Chuyển đến Định dạng > Chế độ xem mặc định.
  • Chọn dạng xem mong muốn của bạn – Biểu dữ liệu hoặc Biểu mẫu liên tục.

Nếu bạn đã chọn Biểu mẫu liên tục, hãy chỉnh sửa thiết kế để phù hợp với sở thích của bạn. Đây là cách của tôi trông như thế nào:Chọn Biểu mẫu Liên tục và Chỉnh sửa Thiết kế

Tôi đã chỉnh sửa định dạng của hộp văn bản Sinh nhật để các giá trị sẽ được hiển thị ở định dạng Ngày Dài. Ngoài ra, tôi đã thực hiện các cập nhật sau về các thuộc tính của biểu mẫu:

  • Cho phép bổ sung: Không
  • Cho phép xóa: Không
  • Cho phép chỉnh sửa: Không

Khi hoàn tất, hãy đóng biểu mẫu và lưu dưới dạng frm_Sinh nhậtCelebrants.

  1. Thêm mã cho lời nhắc sinh nhật.
    • Thêm một mô-đun mới.Thêm một mô-đun mới
    • Thao tác này sẽ mở Trình chỉnh sửa VBA.
    • Thêm đoạn mã sau và sửa đổi nó để phù hợp với nhu cầu của bạn.
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

Xin lưu ý rằng đoạn mã trên sử dụng truy vấn lấy danh sách những người tổ chức sinh nhật cho ngày hiện tại. Nếu bạn muốn nhận danh sách những người sắp sinh nhật trong tháng hiện tại, hãy sử dụng truy vấn sau để thay thế.

'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. Cuối cùng, chúng ta sẽ tạo một macro AutoExec. Điều này sẽ chạy mã khi mở cơ sở dữ liệu.Tạo Macro AutoExec
    • Chuyển đến Tạo > Macro.
    • Chọn Mã vận hành từ danh sách thả xuống.
    • Đối với Tên chức năng, hãy viết RunBirthdayReminders().
    • Lưu macro dưới dạng AutoExec và nhấn OK.
  1. Bây giờ, hãy kiểm tra Lời nhắc sinh nhật của bạn.

Đóng cơ sở dữ liệu và mở lại. Nếu sắp tới có sinh nhật, biểu mẫu nhắc nhở sinh nhật sẽ bật lên. Nếu không, cơ sở dữ liệu sẽ chạy như bình thường.

Nhắc nhở nhanh

Bây giờ để nhắc nhở nhanh chóng. Nếu một ngày nào đó, bạn không thể mở cơ sở dữ liệu của mình, đừng hoảng sợ. Thực hiện các bước cần thiết để phục hồi nó. Nếu bạn vẫn không thể, hãy thử phần mềm của bên thứ ba sẽ sửa chữa truy cập. Vẫn còn hy vọng.

Giới thiệu tác giả:

Jayme Stack là một chuyên gia phục hồi dữ liệu trong DataNumen, Inc., công ty hàng đầu thế giới về công nghệ khôi phục dữ liệu, bao gồm phục hồi sql và các sản phẩm phần mềm phục hồi excel. Để biết thêm thông tin, hãy truy cập www.datanumennăm

Chia sẻ ngay bây giờ:

Được đóng lại.