CDO smtp поща внезапно не се изпраща

Така че имам този код за изпращане на имейл от Excel VBA. Кодът работеше перфектно до тази сутрин, когато без видима причина макросът работи, но нищо не пристигна на адреса на местоназначението! Това проблем с SMTP реле ли е и ако да, как да го поправя? Или е възможно да е проблем с "http://schemas.microsoft.com/cdo/configuration (Все още не знам как работи това! Възможно ли е да имам схемите локално? Или пропускам нещо! Благодаря предварително Тим

Ето го макроса - Променени са само имената, за да се защитят невинните :)

Sub CDO_Mail()
    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/smtpusessl") = True
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "[email protected]" 
        .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "BigSecret"
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "auth.smtp.1and1.fr"

        .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
        .Update
    End With
        With iMsg
        Set .Configuration = iConf
        .To = "[email protected]"
        .CC = ""
        .BCC = ""
        .From = "TheMainMan"
        .Subject = "Important message"
        .TextBody = "BODYTEXT"
        .Send

    End With
End Sub

person Tim Roper    schedule 01.09.2014    source източник


Отговори (1)


Опитайте вместо това да използвате ранно обвързване. Това има допълнителното предимство, че автоматичното довършване е налично. Вашата конфигурация може да бъде настроена по следния начин:

Dim iConf As CDO.Configuration

Set iConf = New CDO.Configuration ' CreateObject("CDO.Configuration")
With iConf.Fields
    .Item(cdoSendUsingMethod) = cdoSendUsingPort
    .Item(cdoSMTPServerPort) = 465
    .Item(cdoSMTPServer) = "auth.smtp.1and1.fr"
    .Item(cdoSendUserName) = "[email protected]" 
    .Item(cdoSendPassword) = "BigSecret"
    'etc.
    .Update
End With

За да използвате това, трябва да зададете изрична препратка към CDO библиотеката: Инструменти > Справка > поставете отметка до Microsoft CDO.

CDO справка във VBE

person Jean-François Corbett    schedule 01.09.2014