社区
我对VBA完全陌生,可以在我的小项目中使用您的帮助,因为我找不到完全想要的东西,只有部分不相关的指南。 (也许我还不知道正确的术语?)
我正在Outlook中寻找宏/自动化,
•当我单击“发送”时,检查在使用用户表单输入数据的Excel文件的指定列中是否存在输入的邮件地址;
•然后检查当前日期是否在所述电子邮件地址旁边输入的开始日期和结束日期之间(分别列);
•满足这两个条件时,将显示一条警告消息,询问我是否仍要发送邮件。
这些是我已经发现的难题的一部分,但是需要帮助:
Click “Send” in Outlook email window
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim xPrompt As String
Dim xOkOrCancel As Integer
On Error Resume Next
在发送之前,请调用Excel文件(不需要显示)到…
Dim ExApp As Excel.Application
Dim ExWbk As Workbook
Set ExApp = New Excel.Application
Set ExWbk = ExApp.Workbooks.Open("C:\Folder\Folder\File.xls")
ExApp.Visible = True
ExWbk.Application.Run "Modul1.HideWb"
ExWbk.Close SaveChanges:=False
在地址列(A列)中查看收件人的电子邮件
Matches “Recipient” field in Outlook email window?
If No, Send email
Still searching for code…
Only found something with “CheckAnd…” but haven’t gotten any farther yet.
如果是,请选中相应电子邮件地址旁边的“发件人”和“直到”日期列(C列)
当前日期等于或晚于“开始”日期且早于或等于“直到”(D列)日期?
如果否,请发送电子邮件
If CDate(xRgDateVal) - Date => 0 And DDate(xRgDateVal) - Date <= 0 Then
如果是,消息提示:
”“名称”(列B)在“从”到“直到”之前不可用。您是否仍要发送电子邮件?”
按钮:
是:发送电子邮件
否:关闭提示,不发送电子邮件,但保持电子邮件打开。
如果否,请发送电子邮件
xPrompt = "<Column B> ist von <Column C> bis <Column D> nicht verfügbar. Möchten Sie diese E-Mail trotzdem senden?"
xYesOrNo = MsgBox(xPrompt, vbYesNo + vbQuestion)
If xYesOrNo <> vbYes Then
Cancel = True
End If
End Sub
我想为这个项目做更多的事情,但是如果我能做到这一点,我会很兴奋。 期待您的提示,指南,术语和/或!