Excel 在目录中搜索PDF文件并与outlook一起发送
我是vba的初学者 我想使用以下条件创建excel vba: 搜索A1、A2列中提到的名称的PDF文件。。。倍数在目录中,如果找到,则通过outlook将该文件连同搜索到的文件附件一起发送。如果未找到文件,则忽略该文件并移动到下一个文件 它应该一次只通过outlook发送一个文件,然后再发送第二个文件,以此类推。试试这个Excel 在目录中搜索PDF文件并与outlook一起发送,excel,vba,outlook,Excel,Vba,Outlook,我是vba的初学者 我想使用以下条件创建excel vba: 搜索A1、A2列中提到的名称的PDF文件。。。倍数在目录中,如果找到,则通过outlook将该文件连同搜索到的文件附件一起发送。如果未找到文件,则忽略该文件并移动到下一个文件 它应该一次只通过outlook发送一个文件,然后再发送第二个文件,以此类推。试试这个 Sub CheckandSend() Dim obMail As Outlook.MailItem Dim irow As Integer Dim dpath As Strin
Sub CheckandSend()
Dim obMail As Outlook.MailItem
Dim irow As Integer
Dim dpath As String
Dim pfile As String
'' directory that contains files
dpath = "xxx"
'' loop through all files and send mail
irow = 1
Do While Cells(irow, 1) <> Empty
'' get file name in column A
pfile = Dir(dpath & "\*" & Cells(irow, 1) & "*")
'' check file exist and pdf file
If pfile <> "" And Right(pfile, 3) = "pdf" Then
Set obMail = Outlook.CreateItem(olMailItem)
With obMail
.To = "xxx@xxx.com"
.Subject = "xxxx"
.BodyFormat = olFormatPlain
.Body = "xxxx"
.Attachments.Add (dpath & "\" & pfile)
.Send
End With
End If
'' go to next file
pfile = pfile + 1
Loop
End Sub
子CheckandSend()
将obMail设置为Outlook.MailItem
Dim irow作为整数
将dpath设置为字符串
将文件变暗为字符串
包含文件的“”目录
dpath=“xxx”
“”循环浏览所有文件并发送邮件
irow=1
当单元格(irow,1)为空时执行此操作
“”获取列A中的文件名
pfile=Dir(dpath&“\*”&单元格(irow,1)&“*”)
“”检查文件是否存在以及pdf文件是否存在
如果pfile“”和Right(pfile,3)=“pdf”,则
设置obMail=Outlook.CreateItem(olMailItem)
用电子邮件
.To=”xxx@xxx.com"
.Subject=“xxxx”
.BodyFormat=olFormatPlain
.Body=“xxxx”
.Attachments.Add(dpath&“\”&pfile)
.发送
以
如果结束
“”转到下一个文件
pfile=pfile+1
环
端接头
请记住在excel中为制作邮件项目添加Microsoft Outlook库参考。谢谢。我尝试了上面的代码,它只是从A1列发送第一个文件,脚本给出了错误“类型不匹配”。我在“pfile=pfile+1”处调试了代码及其给出的错误。如果我遗漏了什么,请告诉我。哦,对不起,我遗漏了键入内容,请使用“irow=irow+1”