Я пытаюсь интегрировать Sendgrid SMTP с excel для отправки электронной почты непосредственно с моего листа excel. Приведенный ниже код возвращает сообщение об ошибке «Сообщение не может быть отправлено на SMTP-сервер». Error ImageSendgrid Email Excel VBA SMTP
Sub Manufactureremail1()
'sends email to manufacturer using Sendgrid
'Application.ScreenUpdating = False
'While (True)
Dim iMsg As Object
Dim iConf As Object
Dim strbody As String
' Dim Flds As Variant
Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
iConf.Load -1 ' CDO Source Defaults
Set Flds = iConf.Fields
With Flds
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") _
= "smtp.sendgrid.net"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 587
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "myusername"
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "mypassword"
.Update
End With
With iMsg
Set .Configuration = iConf
.To = Application.WorksheetFunction.VLookup(Selection.Cells(2, 1), Worksheets("Contacts").Range("email_data"), 2, False)
.CC = ""
'.BCC = Application.WorksheetFunction.VLookup(Selection.Cells(2, 3), Worksheets("Contacts").Range("email_data"), 2, False)
.From = """Yash"" <[email protected]>"
.Subject = "Order of " & Selection.Cells(2, 3)
'.addattachment Worksheets("Contacts").Range("I6")
'.addattachment Worksheets("Contacts").Range("I7")
.htmlBody = "Message"
.send
'MsgBox "Emails Sent!", vbInformation, "Success"
End With
'DoEvents
'Wend
'Application.ScreenUpdating = True
End Sub
Попробуйте с '.item (" HTTP://schemas.microsoft.com/cdo/configuration/smtpserverport ") = 465' – Jeeped
@Jeeped Пробовал уже. Не работает! – Yash