Следующий код используется для прикрепления ежедневного отчета к электронной почте и отправки в предварительно определенный список рассылки. К сожалению, не все файлы существуют каждый день, и когда один из файлов отсутствует, электронное письмо не создается. Я пытался использовать команду «on error resume next», но безрезультатно. Есть ли другой способ обработки ошибки? Может отсутствовать любой файл, но обычно это Report2.
Sub SendMail2()
'defined in previous sub either "" or depending on vbyesno response
'amf = "AM"
'amg = "\AM"
'amk = " AM"
Dim dlApp As Outlook.Application
Dim olMail As Outlook.MailItem
Set olApp = New Outlook.Application
Set olMail = olApp.CreateItem(olMailItem)
On Error Resume Next
With olMail
.To = "<EMAIL LIST>"
.CC = "<EMAIL LIST>"
.Subject = "Subject" & " - " & Format(Date, "mm.dd.yy")
.Body = "Attached are the report details."
'attachments may or may not exist but any of these attachments that does exist should be included in the email
.Attachments.Add ("O:\Reports\" & Format(Date, "mm.dd.yy") & amg & "\report " & Format(Date, "mm.dd.yy") & amk & ".pdf")
.Attachments.Add ("O:\Reports\" & Format(Date, "mm.dd.yy") & amg & "\report " & Format(Date, "mm.dd.yy") & amk & ".xls")
'error often occurs because this report2 does not exist for the day
.Attachments.Add ("O:\Reports\" & Format(Date, "mm.dd.yy") & amg & "\report2 " & Format(Date, "mm.dd.yy") & amk & ".pdf")
.Attachments.Add ("O:\Reports\" & Format(Date, "mm.dd.yy") & amg & "\report2 " & Format(Date, "mm.dd.yy") & amk & ".xls")
.Display
''olMail.Send
End With
Set olMail = Nothing
Set olApp = Nothing
Call SendMail3
End Sub
Спасибо,
Jay