如何修改邮件脚本,仅在每月第一个周一发送邮件?
修改方案
1. 替换发送条件判断代码
把原来的周日判断语句替换为以下代码,用于校验checkDate是否是当月第一个周一:
= (Weekday(checkDate, vbMonday) = 1 And Day(checkDate) <= 7)
逻辑说明:
Weekday(checkDate, vbMonday) = 1:指定周一为一周的第一天,判断当前日期是周一Day(checkDate) <=7:确保日期在当月前7天内,结合上一条即可锁定当月第一个周一
2. 包裹邮件发送代码
将邮件发送逻辑包裹在条件判断内,只有满足条件时才执行发送操作:
' 判断是否是当月第一个周一 If (Weekday(Date, vbMonday) = 1 And Day(Date) <= 7) Then .CreateReports .CreateNewEmail keyName "Email Subject" With .LastEmail .AddTo "email.recipient" End With .SendEmails .SetScriptRunSuccess True End If
注:如果脚本中已用checkDate变量存储目标日期,将代码里的Date替换为checkDate即可。
内容的提问来源于stack exchange,提问作者user26998577
相关产品推荐
相关产品推荐

