E-Mail Outlook VBA

Hallo an die Experten
Ich möchte eine snp.Datei per E-Mail versenden. Mein Code:

DoCmd.OpenReport „repGetraenkeRechnung“, acViewPreview, , "PersonalID = " & Me.PersonalID
DoCmd.OutputTo acOutputReport, „repGetraenkeRechnung“, acFormatSNP, CurrentProject.Path & „“ & Me!PersonalID & „.snp“
DoCmd.Close acReport, „repGetraenkeRechnung“
FollowHyperlink „mailto:“ & Me!EMail & „?subject=Abrechnung Kiosk“

Es wird ein Outlook-Form geöffnet mit Betreff „Abrechnung Kiosk“, das funktioniert schon. Aber wie codiere ich den Text (der ist bei allen Empfängern gleich)? Irgendwie mit „body“, oder?
Und es sollte auch noch die (& Me!PersonalID & „.snp“)-Datei als Beilage versandt werden. Wie geht das? Mit meiner Varante wird die snp noch zusätzlich abgespeichert, müsste aber nicht sein.

Hallo,

na ja mit dem FollowHyperlink ist zwar einfach und schnell, aber besser gehts folgender Massen:

=======================================================
Dim objOutlook As Outlook.Application
Dim objOutlookMsg As Outlook.MailItem
Dim objOutlookRecip As Outlook.Recipient

Set objOutlook = CreateObject(„Outlook.Application“)
Set objOutlookMsg = objOutlook.CreateItem(0)

With objOutlookMsg
'Durch alle Empfänger
.Recipients.Add „eine Mailadresse“
.Recipients.Add „und noch eine Mailadresse“
For Each objOutlookRecip In .Recipients
objOutlookRecip.Resolve 'Namen überprüfen
Next

'Inhalt des Mails festlegen
.Importance = 1 ’ normale priorität
.Subject = „Betreff“
'Email Text
Nachricht = „die Mailnachricht“
'#.HTMLBody = „die Mailnachricht in HTML-Format“
.Attachments.Add „Ein Dateiname“, olByValue 'Berichte anhängen
.Attachments.Add „Ein weiterer Dateiname“
.Send
End With

Tschau
Peter

Es geht leider nicht. Wenn ich meine Befehlsschaltfläche starte, kommt bei der Zeile:
Dim objOutlook As Outlook.Application
eine Fehlermeldung: Benutzerdefinierter Typ nicht definiert
Egal ob ich Outlook geöffnet habe oder nicht.
Getestet mit Office 2002 und 2007

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

Hallo,

dann musst du bei den Verweise auch Outlook hinzufuegen.

VBA-Editor-Menu-Extras->Verweise, dort MS Outlook anharken und gut ist.

Tschau
Peter

Hallo
Ja gut danke. So ein Micromist, dass dieser Haken nicht standardmässig gesetzt ist.
Bei deinem Code musste ich aber abändern:
.To = statt Recipients.Add
und
.Body= statt Nachricht
Jetzt erstellt er mal das E-Mail. Ist es möglich, dass er die E-Mail-Adresse übernimmt, die im vorher erstellten Bericht im Feld „EMail“ definiert ist?

Grüsse Peter

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

Hallo,

Ja gut danke. So ein Micromist, dass dieser Haken nicht
standardmässig gesetzt ist.

Das wuerde zu Problemen fuehren wenn man die Anwendung weitergibt und dort kein Outlook installiert ist. Ausserdem macht es keinen Sinn Module beim Start einer Anwendung zu laden, die man nicht benoetigt.

Bei deinem Code musste ich aber abändern:
.To = statt Recipients.Add
und
.Body= statt Nachricht

Ok, hatte den Code nut schnell aus einer meiner Anwendungen rauskopiert und angepasst ohne zu testen.

Jetzt erstellt er mal das E-Mail. Ist es möglich, dass er die
E-Mail-Adresse übernimmt, die im vorher erstellten Bericht im
Feld „EMail“ definiert ist?

Nein, die muss man schon von Hand zu Fuss uebertragen.

Tschau
Peter

E-Mail automatisch: doch das geht, wenn das Feld definiert ist!!
.To = Me!EMail

Ich scheitere jetzt nur noch daran:
statt die ganz unten beschriebene Datei zu senden, sollte er diese senden (also diejenige, die vorher im Bericht erstellt wird)
" & Me!PersonalID & „.snp“

.Attachments.Add „C:\Dokumente und Einstellungen\HP_Administrator\Eigene Dateien\Daten\63.snp“
.Send
End With

Jetzt erstellt er mal das E-Mail. Ist es möglich, dass er die
E-Mail-Adresse übernimmt, die im vorher erstellten Bericht im
Feld „EMail“ definiert ist?

Nein, die muss man schon von Hand zu Fuss uebertragen.

Tschau
Peter

Hallo,

Ich scheitere jetzt nur noch daran:
statt die ganz unten beschriebene Datei zu senden, sollte er
diese senden (also diejenige, die vorher im Bericht erstellt
wird)
" & Me!PersonalID & „.snp“

dann musst du es auch genau so definieren:

.Attachments.Add "C:\Dokumente und

Einstellungen\HP_Administrator\Eigene Dateien\Daten\ " & Me!PersonalID & ".snp"

.Send
End With

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)