Salve, da tempo uso un codive in VBA in Office 2010 su Xp per l'invio di email, ha sempre funzionato benissimo. Ad un certo punto comincia a darmi il seguente errore:
Errore di run-time '-2147220973 (80040213)':
Il trasporto non è riuscito a connettersi al server.
Posso dirvi che:
- l'smtp è corretto, ho configurato lo stesso account su outlook e funziona bene.
- ho provato a cambiare smtp, uguale
- lo stesso codice VBA, nello stesso file, eseguito da un altro pc in rete funziona benissimo, quindi il problema è relativo al mio pc.
- ho provato il dns 8.8.8.8 di Google, uguale
- ho provato a disabilitare momentanemante il Nod32, uguale
- il mio firewall è disabilitato per default, gestito dal domain controller
c'è da dire che giorni fa ho installato Kies, il programma per gli smartphone Samsung. Durante l'installazione mi ha chiesto di poter modificare le impostazioni del firewall ed ho acconsentito. Dopodiché, (ho potuto provare la macro solo giorni dopo) mi si è presentato il problema.
Potrebbe comunque essere il firewall di windows benché disabilitato?
Per la cronaca, riporto parte del codice che uso per l'invio di email da VBA, grazie a tutti:
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.nomedominio.it"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = ""
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "pass"
.Update
End With
strbody = MessaggioIncrementabile
With iMsg
Set .Configuration = iConf
.To = "maildestinatario"
'.CC = ""
'.BCC = ""
.From = "mailmittente"
.Subject = "Oggetto"
.TextBody = strbody
.Send
End With