Я хочу создать Excel VBA с указанными ниже критериями:Поиск файла PDF в каталоге и отправить с Outlook Mail
Поиск PDF файлов с именами, упомянутыми в колонке A1, A2, ... несколько ... в каталог и если он найден, отправьте этот файл через Outlook с поисковым вложением файла. Если файл не найден, проигнорируйте этот файл и перейдите к следующему файлу.
Ниже VBA я получил показывает ошибку «Тип несовпадение» в Pfile = Pfile + 1 и цикл не выполняется. Дайте мне знать, где я буду не так.
Sub CheckandSend()
Dim obMail As Outlook.MailItem
Dim irow As Integer
Dim dpath As String
Dim pfile As String
`'' directory that contains files
`dpath = "xxxx"
`'' 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 = "[email protected]"
.Subject = "123"
.BodyFormat = olFormatPlain
.Body = "123"
.Attachments.Add (dpath & "\" & pfile)
.Send
End With
End If
pfile = pfile + 1
Loop
End Sub
Pfile файл, вы не можете увеличивать файл с +1, вероятно, вы хотите, чтобы увеличить IRow вместо ... –