You can certainly have a hidden form with a timer event. However, the problem is that to do anything, the DB must be open. If the DB is not open, timer-based code will not be running. There is also the issue that if there is more than one user running the DB, you might not wish to have each one send out the same message at the same time.
A solution that has been offered before is to do the following:
1. Write a macro in your database to perform a RunCode operation. (See next entry in this list for the code to run.) The macro last step must be an Application Quit
2. Write a FUNCTION (important; can't be a subroutine if used in a macro) to do the SendMail operation
3. Write a batch script to launch Access and use the /X:macro-name option on the command line.
4. Use Windows Task Scheduler to run the script at the required time of day. Because the SendMail option will involve (at the minimum) an SMTP operation, you must be running the script as a user who CAN send mail. Some site rules prevent SYSTEM from doing so, depending on domain startup files.
All of this will require research into domain rules. Some domain admins disallow Windows Task Scheduler usage anyway.