我有一个日常任务两个或三个非常简单的Word文档,我做一个邮件合并发送文档的地址从Excel.非常简单的邮件,开始邮件合并-电子邮件,选择数据源- xlsm文件,清理行为和发送.非常简单.然而,一个单一的按钮点击会更容易!!录制了一个vba宏的操作。录制完成后,单击按钮启动宏,收到此运行时错误:“通过邮件或传真没有有效的邮件地址。选择设置按钮选择邮件地址数据字段。”尝试了几次,是什么导致错误,如何修复?突出显示错误的步骤:“执行错误:=False”记录中的代码:
Sub sendMailSheet1()
'
' sendMail Macro
'
'
'MsgBox "In Sheets1"
ActiveDocument.MailMerge.MainDocumentType = wdEMail
ActiveDocument.MailMerge.OpenDataSource Name:= _
"C:\Users\Hal 1GB M2\Documents\MyEmailer.xlsm", ConfirmConversions:=False _
, ReadOnly:=False, LinkToSource:=True, AddToRecentFiles:=False, _
PasswordDocument:="", PasswordTemplate:="", WritePasswordDocument:="", _
WritePasswordTemplate:="", Revert:=False, Format:=wdOpenFormatAuto, _
Connection:= _
"Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=C:\Users\Hal 1GB M2\Documents\MyEmailer.xlsm;Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Engine Type=37;Jet OLEDB:Database Lo" _
, SQLStatement:="SELECT * FROM `Sheet1$`", SQLStatement1:="", SubType:= _
wdMergeSubTypeAccess
With ActiveDocument.MailMerge
.Destination = wdSendToEmail
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=False
End With
End Sub
字符串
1条答案
按热度按时间quhf5bfb1#
合并到电子邮件需要知道数据源中的哪个字段/列包含它应该用来发送每个电子邮件的电子邮件地址。
宏记录器不记录所需的代码行。(宏记录器可能是一个有用的起点,但它不记录所有内容)。
字符串
其中,email是包含电子地址的Excel列的确切名称(区分大小写)。
您可能还需要
型