Docmd.SendObject

Hallo,

ich bastle gerade am automatischen Versand von Mails aus Access (System: Access 2000 mit Windows 2000). Die dazupassende Prozedur funktioniert auch schon so weit (E-Mail-Adressen, Mail-Text, usw. werden ausgelesen und erstellt) und der Versand klappt auch … aber leider nur manchmal! Aus unerfindlichen Grund kann das Mail manchmal nicht verschickt werden und es tritt der Fehler Nr. 2958 (Reserved Error) auf.

Es nützt außerdem nichts, wenn ich den Fehler abfange und das Mail nocheinmal zu senden versuche, denn es tritt immer wieder auf. Bei anderen Mails geht es allerdings problemlos.

Danke für Anmerkungen, Flo.

Hallo Florian,

ich habe mich bei www.acces-home.de ein Mailscript geholt und es läuft einwandfrei.

Vielleicht hast du einen Parameter vergessen, die weisen extra daraufhin.

Gruß

Marc

Hallo Marc,

ich habe mir das Skript von www.access-home.de mal angeschaut und es macht eigentlich das selbe wie bei mir.

Ich habe jetzt noch weiter getestet und den Fehler etwas eingrenzen können. Die Routine um die Mails zu erzeugen arbeitet soweit fehlerfrei. Ich habe aber den Verdacht, dass die Länge der Mail, um genau zu sein, der Text den man im Mail-Body mitschickt, begrenzt ist. Es kommt zwar keine konkrete Fehlermeldung, aber wenn auch im von dir genanntem Skript zu viel Text eingeben wird, funktioniert der Versand auch nicht korrekt.

Ist dir, oder irgendwie anderen in der Welt da draussen :smile: schon einmal ähnliches passiert?

LG, Florian.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Flo;

DoCmd.SendObject acReport, stDocName, acFormattxt, „[email protected]“,cc Verteiler ,bcc Verteiler , „Text für Betreffzeile“ .
Ich kenne keinen Fall wo das nicht funktioniert.
Wenn du die emailadresse irgendwo ausliest kann eventuell da ein Fehler auftreten der dann ein ungültiges Adressformat zurückgibt. Dies gilt auch für Adressen im Verteiler.
Sendobject dient dazu , einen Report zu versenden. Du solltest also den Mailtext in einem Report ausgeben und dieser Report wird als Anlage versendet. Dann gibts sicher keine Probleme.
Gruß Hans

Danke für die Inputs :smile:

Meine Routine zum Verschicken schaut in etwa so aus:

***************************

Sub mail_simple()

Dim User_REC As New ADODB.Recordset
Dim zaehler_int As Integer

User_REC.Open „_TEST_Mail“, CurrentProject.Connection, adOpenDynamic, adLockOptimistic
User_REC.MoveFirst

zaehler_int = 1

Do Until User_REC.EOF = True
DoCmd.SendObject , , , User_REC!adresse, , „[email protected]“, zaehler_int & "/5 Test-Mail: " & User_REC!Name, „TEST“, True
User_REC.MoveNext
zaehler_int = zaehler_int + 1
Loop

User_REC.Close

End Sub

***************************

Und sie geht an sich ohne Probleme. Wie schon in der zweiten Antwort erwähnt, glaube ich dass es an der Länge des Strings liegt, den ich als Text direkt im Body mitschicken will.

Mir würde es besser gefallen, meine Infos dort hinein zuschreiben, aber an die Möglichkeit mit dem Report habe ich auch schon gedacht. Gefällt mir wir gesagt nicht so gut, aber wenn es dafür ohne Probleme geht …

LG, Florian.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Ergänzung: Docmd.SendObject
Zur Info:

Ich habe auf der Support-HP von Microsoft einen recht ausführlichen Artikel zu meinem Problem gefunden. Falls jemand mit ähnlichen Problemen kämpft hier zum nachlesen:

http://support.microsoft.com/default.aspx?scid=kb;de…

LG & und viel Spass beim Kampf mit Access, Flo.

P.S: Es liegt übrigens wirklich an der Länge des Mails … in Kombination mit dem mehrfachen Versand.