Cómo agregar recordatorios de cumpleaños en su base de datos de Access

Comparte ahora:

Descubra cómo puede agregar recordatorios de cumpleaños a su base de datos de Access. Infórmese si se acerca el cumpleaños de su cliente o empleado para que pueda enviarles un cordial saludo.

Enviar felicitaciones de cumpleaños puede ser una excelente manera de conectarse y fortalecer la relación con un cliente o empleado. Si está manejando una base de datos de Access que contiene registros de clientes / empleados, puede ser excelente recibir notificaciones de vez en cuando si se acerca el cumpleaños de un cliente o empleado. En este tutorial, aprenderá cómo puede crear una función que le notificará el día especial de alguien en el momento en que abra la base de datos.

Descargar Ahora

Si desea comenzar a utilizar la función lo antes posible, puede:

Descargue la base de datos de muestra con códigos VBA ahora

De lo contrario, si desea hacer bricolaje, puede leer el contenido a continuación.

Requisito previo

Este tutorial asume que tiene una tabla en su base de datos que contiene estos 3 campos: nombre, apellido y fecha de nacimiento.

Pasos para agregar recordatorios de cumpleaños en la base de datos de Access

  1. Cree una nueva tabla y asígnele un nombre CumpleañosCelebrantes. Esto servirá como depósito para la lista de celebrantes de cumpleaños. Agregue 3 campos como se muestra a continuación. No se necesita una clave principal.Cumpleaños De MesaCelebrantes
  2. Cree un formulario para BirthdayCelebrants. Este formulario aparecerá al abrir la base de datos si hay próximos cumpleaños.Crear un formulario para cumpleaños
  • En el panel de navegación, seleccione la tabla BirthdayCelebrants.
  • Vaya a Crear> Formulario.
  • Se creará automáticamente un formulario único para usted.

Dado que vamos a mostrar una lista de celebrantes de cumpleaños, le sugiero que cambie la Vista predeterminada del formulario a Hoja de datos o Formularios continuos. De esta manera, puede tener una descripción general rápida de la lista.Cambiar la vista predeterminada del formulario

  • En la vista de diseño, seleccione el formulario.
  • Abra la hoja de propiedades (ALT + F11)
  • Vaya a Formato> Vista predeterminada.
  • Seleccione la vista que desee, ya sea Hoja de datos o Formularios continuos.

Si ha seleccionado Formas continuas, edite el diseño para que coincida con sus preferencias. Así es como se ve el mío:Seleccione formularios continuos y edite el diseño

He editado el formato del cuadro de texto Cumpleaños para que los valores se muestren en formato de fecha larga. Además, realicé las siguientes actualizaciones en las propiedades del formulario:

  • Permitir adiciones: No
  • Permitir eliminaciones: No
  • Permitir ediciones: No

Cuando termine, cierre el formulario y guárdelo como frm_Celebradores de cumpleaños.

  1. Agrega el código para el recordatorio de cumpleaños.
    • Agrega un nuevo módulo.Agregar un módulo nuevo
    • Esto abrirá el Editor de VBA.
    • Agregue el siguiente código y modifíquelo para que se ajuste a sus necesidades.
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

Tenga en cuenta que el código anterior utiliza una consulta que obtiene una lista de celebrantes de cumpleaños para el día actual. Si desea obtener una lista de las personas cuyo cumpleaños se aproxima para el mes actual, utilice la siguiente consulta.

'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. Finalmente, crearemos una macro AutoExec. Esto ejecutará el código al abrir la base de datos.Crear una macro AutoExec
    • Vaya a Crear> Macro.
    • Seleccionar Ejecutar código de la lista desplegable.
    • Para el nombre de la función, escriba RunBirthdayReminders ().
    • Guarde la macro como Ejecución automática y haga clic en Aceptar.
  1. Ahora, pruebe su recordatorio de cumpleaños.

Cierre la base de datos y vuelva a abrirla. Si hay próximos cumpleaños, debería aparecer el formulario de recordatorio de cumpleaños. Si no hay ninguno, la base de datos se ejecutará como de costumbre.

Recordatorio rápido

Ahora, un recordatorio rápido. Si un día no puede abrir su base de datos, no se asuste. Toma las medidas necesarias para recuperarlo. Si aún no puede, pruebe un software de terceros que arreglar acceso. Todavía hay esperanza.

Introducción del autor:

Jayme Stack es un experto en recuperación de datos en DataNumen, Inc., que es el líder mundial en tecnologías de recuperación de datos, incluyendo recuperación de sql y productos de software de recuperación de Excel. Para más información visite www.datanumen.com

Comparte ahora:

Los comentarios están cerrados.