-1

我目前正在为我的工作创建一个数据库,其中包含公司车队的基本信息。我创建了数据库和前表,其中包含诸如汽车、汽车颜色、MOT 日期、纳税日期等变量。

我需要以某种方式让 Access 检测公司汽车的 MOT 日期何时到期,并通过将今天的日期与在 MOT 日期字段中输入的日期进行比较,向某人发送电子邮件以通知他们该日期即将到来。

例如,如果今天的日期比 MOT 日期早一周,请向任何人发送电子邮件通知他们这是到期的。

我需要自动执行此操作,我计划每天打开和刷新工作表,因此它不需要特别花哨并且在没有打开 Access 的情况下执行此操作,我只需要它来执行此任务而不需要浏览页面和数据页面.

4

1 回答 1

1

您可以在启动时执行此操作。只需编写一个查询来选择您想要的记录。然后循环查询并向每个人发送一封电子邮件,然后确保您有一个名为“EmailSent”的字段,您将更新为 True,这样您就不会在第二天向他们发送电子邮件(假设您只想给他们发一次电子邮件)。

您可能只需要一些 VBA:

Dim db as Database
Dim rec as Recordset

Set db = CurrentDB
Set rec = db.OpenRecordset("SELECT * FROM MyQueryName")

Do while rec.EOF = False
  'Loop through each record, send them an email
  'Add code to send email here
rec.MoveNext

'Now update the table so these guys don't get emailed again
dim MySQL as String
MySQL = "UPDATE MyQueryName SET EmailSent = 'True'"
DoCmd.RunSQL MySQL

以上都是“aircode”,未经测试,但应该让你朝着正确的方向前进。

只需确保 EmailSent = False 是您查询中的一个条件。

于 2015-11-23T16:59:01.967 回答