如果在Excel中已达到到期日期,如何发送电子邮件?
如下图所示,如果 C 列中的到期日小于或等于 7 天(例如,当前日期为 2017/9/13),则会向 A 列中的指定收件人发送一封电子邮件,并且B 列中的指定内容显示在电子邮件正文中。 你怎么做才能实现它? 本文提供了一个 VBA 代码来帮助您完成此任务。
如果截止日期已达到VBA代码,则发送电子邮件
如果截止日期已达到VBA代码,则发送电子邮件
惊人的! 在 Excel 中使用高效的选项卡,如 Chrome、Firefox 和 Safari!
每天节省50%的时间,并减少数千次鼠标单击!
如果在Excel中已达到到期日期,请执行以下操作以发送电子邮件提醒。
1。 按 其他 + F11 同时打开 Microsoft Visual Basic应用程序 窗口。
2.在 Microsoft Visual Basic应用程序 窗口,请点击 插页 > 模块。 然后将下面的VBA代码复制并粘贴到“模块”窗口中。
VBA代码:如果在Excel中关闭了到期日,则发送电子邮件
Public Sub CheckAndSendMail()
Updated by Extendoffice 2018/11/22
Dim xRgDate As Range
Dim xRgSend As Range
Dim xRgText As Range
Dim xRgDone As Range
Dim xOutApp As Object
Dim xMailItem As Object
Dim xLastRow As Long
Dim vbCrLf As String
Dim xMailBody As String
Dim xRgDateVal As String
Dim xRgSendVal As String
Dim xMailSubject As String
Dim i As Long
On Error Resume Next
Set xRgDate = Application.InputBox("Please select the due date column:", "KuTools For Excel", , , , , , 8)
If xRgDate Is Nothing Then Exit Sub
Set xRgSend = Application.InputBox("Please select the recipients?email column:", "KuTools For Excel", , , , , , 8)
If xRgSend Is Nothing Then Exit Sub
Set xRgText = Application.InputBox("Select the column with reminded content in your email:", "KuTools For Excel", , , , , , 8)
If xRgText Is Nothing Then Exit Sub
xLastRow = xRgDate.Rows.count
Set xRgDate = xRgDate(1)
Set xRgSend = xRgSend(1)
Set xRgText = xRgText(1)
Set xOutApp = CreateObject("Outlook.Application")
For i = 1 To xLastRow
xRgDateVal = ""
xRgDateVal = xRgDate.Offset(i - 1).Value
If xRgDateVal <> "" Then
If CDate(xRgDateVal) - Date <= 7 And CDate(xRgDateVal) - Date > 0 Then
xRgSendVal = xRgSend.Offset(i - 1).Value
xMailSubject = xRgText.Offset(i - 1).Value & " on " & xRgDateVal
vbCrLf = "<br><br>"
xMailBody = "<HTML><BODY>"
xMailBody = xMailBody & "Dear " & xRgSendVal & vbCrLf
xMailBody = xMailBody & "Text : " & xRgText.Offset(i - 1).Value & vbCrLf
xMailBody = xMailBody & "</BODY></HTML>"
Set xMailItem = xOutApp.CreateItem(0)
With xMailItem
.Subject = xMailSubject
.To = xRgSendVal
.HTMLBody = xMailBody
.Display
.Send
End With
Set xMailItem = Nothing
End If
End If
Next
Set xOutApp = Nothing
End Sub
:线 如果CDate(xRgDateVal)-日期<= 7 和 CDate(xRgDateVal)-日期> 0 然后,在VBA代码中,意味着到期日期必须大于1天且小于或等于7天。 您可以根据需要进行更改。
3。 按 此 F5键运行代码。 在第一个弹出 Kutools for Excel 对话框中,请选择截止日期列范围,然后单击 OK 按钮。 看截图:
4.然后第二 Kutools for Excel 弹出对话框,请选择包含收件人电子邮件地址的相应列范围,然后单击 OK 按钮。 看截图:
5.最后 Kutools for Excel 对话框中,选择要在电子邮件正文中显示的内容,然后单击 OK 按钮。
然后,如果C列中的截止日期小于或等于7天,则会自动创建一封电子邮件,列出指定的收件人,主题和正文。 请点击 送出 按钮发送电子邮件。
:
1.每个创建的电子邮件都对应一个截止日期。 例如,如果有三个到期日期符合条件,则将自动创建三封电子邮件。
2.如果没有符合条件的日期,则不会触发此代码。
3.仅当您使用Outlook作为电子邮件程序时,VBA代码才起作用。
相关文章:
如何基于Excel中的单元格值自动发送电子邮件?
当工作簿保存在Excel中时,如何通过Outlook发送电子邮件?
如果在Excel中修改了某个单元格,该如何发送电子邮件?
如果在Excel中单击按钮,如何发送电子邮件?
如果在Excel中更新了工作簿,如何发送电子邮件提醒或通知?
最佳办公生产力工具
将小时转化为分钟 Kutools for Excel!
准备好增强您的 Excel 任务了吗? 利用的力量 Kutools for Excel - 您终极的节省时间的工具。 简化复杂的任务并像专业人士一样浏览数据。 以闪电般的速度体验 Excel!
为什么需要 Kutools for Excel
🛠️ 超过 300 项强大功能: Kutools 包含 300 多项高级功能,可简化您在 1500 多种场景中的工作。
📈 卓越的数据处理能力:合并单元格、删除重复项并执行高级数据转换 - 所有这些都不费吹灰之力!
⏱️ 高效的批量操作:当你可以聪明地工作时,为什么还要付出额外的努力呢? 轻松批量导入、导出、组合和调整数据。
📊 可定制的图表和报告:访问各种附加图表并生成富有洞察力的报告。
🗄️ 强大的导航窗格:通过强大的列管理器、工作表管理器和自定义收藏夹获得优势。
📝 七种类型的下拉列表:通过各种功能和类型的下拉列表使数据输入变得轻而易举。
🎓 用户友好:对于初学者来说轻而易举,对于专家来说是一个强大的工具。
***
***
*** ***
Office Tab 为 Office 带来选项卡式界面,让您的工作更轻松
在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
每天将您的工作效率提高50%,并减少数百次鼠标单击!