Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Versand von Email per CDO.Message fehlerhafte Email Protokollieren

Frage Microsoft Microsoft Office

Mitglied: christiankarl

christiankarl (Level 1) - Jetzt verbinden

13.08.2013, aktualisiert 16:44 Uhr, 2754 Aufrufe

Hallo,
ich versuche Mails per Microsoft Access zu versenden
es kann sein, dass in den Adressen mal falsch geschriebene Empänger vorhanden enthalten sind.

Beim versand erhalte ich dann die FM:

Laufzeitfehler '-214722099 (8004020f)
Der Server hat eine oder mehere Empängeradressen zurückgewiesen. Die Serverantwort lautet 501 5.5.4 Invalid Adress


01.
Private Sub Befehl_Senden_Click() 
02.
Dim objNachrich As MailItem 
03.
Dim EMailbetreff As String 
04.
Dim EMail_orginal As String 
05.
Dim Email As String 
06.
Dim anzahlmail As String 
07.
Dim empfänger As String 
08.
Dim db As Database 
09.
Dim Rs As Recordset 
10.
Call IPH 
11.
 
12.
If [Betreff] = "" Or [Mailtext] = "" Then 
13.
MsgBox "Sie haben noch keine E-Mail erstellt" 
14.
Exit Sub 
15.
End If 
16.
 
17.
'Öffne vorlage 
18.
EMailbetreff = [Betreff] 
19.
EMailVorlage = [Mailtext] 
20.
'Öffne vorlage Ende 
21.
   
22.
   
23.
   Set objMessage = CreateObject("CDO.Message") 
24.
    
25.
   Call CDO_config 
26.
    
27.
  With objMessage.Configuration.Fields 
28.
    '==This section provides the configuration information for the remote SMTP server. 
29.
    .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = sendusing           '==Normally you will only change the server name or IP. 
30.
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = smtpserver         'Name or IP of Remote SMTP Server 
31.
    .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = smtpserverport 'Server port (typically 25) 
32.
    .Update 
33.
    '==End remote SMTP server configuration section== 
34.
  End With 
35.
   
36.
'Auslesen Anzahl E-Mail Adressen 
37.
    Set db = CurrentDb() 
38.
    Set Rs = db.OpenRecordset("Email", dbOpenDynaset) 
39.
    Rs.MoveLast             ' <-- wichtig, sonst 'RecordCount' evtl. falsch 
40.
    iMaxZeile = Rs.RecordCount 
41.
    Rs.MoveFirst 
42.
    MsgBox "Es werden: " & iMaxZeile & " E-mails gesendet" 
43.
'Auslesen Anzahl E-Mail Adressen Ende 
44.
      
45.
'Senden 
46.
  'Schleife 
47.
   
48.
    For w = 1 To 10 
49.
     If eAnhang(w) <> "" Then 
50.
     objMessage.AddAttachment eAnhang(w) 'Anhang aus formular 
51.
     End If 
52.
    Next 
53.
     
54.
  For i = 1 To iMaxZeile 
55.
      
56.
    Email = Replace(EMailVorlage, "[Anrede]", Rs.Fields("Anrede") & "") 
57.
    Email = Replace(Email, "[Anrede-Anschreiben]", Rs.Fields("Anrede-Anschreiben") & "") 
58.
    Email = Replace(Email, "[Vorname]", Rs.Fields("Vorname") & "") 
59.
    Email = Replace(Email, "[Name]", Rs.Fields("Nachname") & "") 
60.
    Email = Replace(Email, "[Autohaus]", Rs.Fields("Autohaus") & "") 
61.
   
62.
    'Set objMessage = CreateObject("CDO.Message") 
63.
    With objMessage 
64.
     .Subject = EMailbetreff 
65.
     .Sender = Sender   ' Absender 
66.
     .From = SenderName ' Absendername 
67.
     .To = Rs.Fields("E-Mail") 
68.
     .HTMLBody = Email 
69.
     '.Send  'Senden E-Mail 
70.
     On Error Resume Next 
71.
     .Send 
72.
                   ' If Err.Number <> 0 Then 
73.
                   ' MsgBox Rs.Fields("E-Mail") 
74.
                   If (Err.Number = -2147220977) Then 
75.
                   MsgBox "Die E-Mail Adresse " & Rs.Fields("E-Mail") & " konnte nicht versendet werden:" & vbNewLine & vbNewLine & Err.Description 
76.
 
77.
                         
78.
                        'Response.Write ("Error sending email to " & Rs.Fields("E-Mail") & "<br />") 
79.
                         
80.
                        Err.Clear 
81.
                    End If 
82.
                On Error GoTo 0 
83.
    End With 
84.
    empfänger = empfänger & Rs.Fields("E-Mail") & "; " 
85.
    Rs.MoveNext 
86.
  Next 
87.
 'Schleife ende 
88.
    Rs.Close 
89.
    db.Close 
90.
     
91.
MsgBox " Emails erfolgreich versendet!" 
92.
  
93.
 Set db = CurrentDb 
94.
 Set Rs = db.OpenRecordset("09_Gesendete-Mails") 
95.
     
96.
    With Rs 
97.
       .AddNew 
98.
       !Betreff = EMailbetreff 
99.
       !Nachricht = EMailVorlage 
100.
       !Mailadresse = empfänger 
101.
       .Update 
102.
       .Bookmark = Rs.LastModified 
103.
    End With 
104.
     
105.
    Rs.Close 
106.
 db.Close 
107.
 
108.
 
109.
DoCmd.Close 
110.
End Sub
die Meldung per msgbox ausgeben funktioniert wunderbar,

nur wie bekomme ich es hin,

1. diese Meldung in eine Tabelle zu schreiben ( für einen Bericht )?
2. alle Errormeldungen anzeigen zu lassen und nicht nur die


Gruß
Christian

Ähnliche Inhalte
Exchange Server
Exchange 2016 - E-Mail Versand

Frage von hugooo zum Thema Exchange Server ...

Outlook & Mail
gelöst Outlook 2016 Mailempfang nur nach Versand (9)

Frage von decker zum Thema Outlook & Mail ...

Windows Server
gelöst WSUS email Benachrichtigung verschlüsselt (1)

Frage von MichiBLNN zum Thema Windows Server ...

Rechtliche Fragen
Marketingfrage zum Versand von Rechnungen (11)

Frage von StefanKittel zum Thema Rechtliche Fragen ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
gelöst Raid-Controller (Areca) Datenverlust trotz R5 (16)

Frage von sebastian2608 zum Thema Festplatten, SSD, Raid ...

Server-Hardware
HP ProLiant DL380 G7, POST Error: 1785-Drive Array not Configured (10)

Frage von Paderman zum Thema Server-Hardware ...

Server-Hardware
Starker PC zum Virtualisieren (10)

Frage von canlot zum Thema Server-Hardware ...

Microsoft Office
gelöst Office 365 Pro Domäne einrichten OHNE Webseite (9)

Frage von thklemm zum Thema Microsoft Office ...