Aus Access Emails (über Outlook) versenden ?

Kann ich aus Access eine Email-Nachricht erzeugen und Sie an meinen eigenen Outlook Briefkasten zum versenden weiterreichen?

Oder kann ich gar aus Access Email selber versenden ?

Wer kann mir helfen ?

Versuchs mal mit „DoCmd.SendObject“

pp

Wenn Du mehr Möglichkeiten haben willst, als „DoCmd.SendObject“ Dir bietet, kannst Du unter „Verweise“ entsprechende Objekt-Bibliotheken einbinden:
Wenn Du z.B. die Mapi-Bibliothek (Active Messaging 1.1 Object Library) einbinden möchtest, brauchst Du die Datei „OleMsg32.dll“. Auch Outlook selbst steht zur Verfügung (Beispiel Outlook 98), Du musst dann die Datei „MSOutl85.olb“ benutzen. Mit dieser Bibliothek kannst Du Outlook direkt ansprechen inkl. Kalender, Journal, etc.

Neben dem von Peter und Matthias Gesagten: OLE Messaging ist ein komplexes Thema, das MS in verschiedenen Artikeln in der Knowledge Base abhandelt. Wenn’s dich interessiert, suchst du am besten mal selbst:
http://support.microsoft.com/servicedesks/msdn/searc…

mit Stichworten wie „OLE Messaging“, „Automation“, „MAPI“ usw.

Reinhard

Versuchs mal damit:
Public Function EmailVersenden()
Dim Session As Object
Dim Message As Object
Dim Recipient As Object
Dim errObj As Long
Dim errMsg

On Error GoTo MAPITrap
’ Eine Instanz des „MAPI“ Objektes referenzieren
Set Session = CreateObject(„Mapi.Session“)

’ Exchange Profil auswählen
Session.Logon profilename:=„Microsoft Outlook-Interneteinstellungen“

’ Eine neue Email Nachricht erstellen
Set Message = Session.Outbox.Messages.Add

’ Nachrichten Betreff und Text hinzufügen
Message.Subject = Forms![Notizen zum Kunden]![KDNR] & " " & Forms![Notizen zum Kunden]![Name1]
Message.Text = Forms![Notizen zum Kunden]![Notizen]

With Message
’ Eine Adresse dem eMail Objekt hinzufügen und
’ einen Verweis in eine Objekt Variable speichern
Set Recipient = Message.Recipients.Add

’ E-Mail Adresse hinzufügen, Internet oder
’ ein Name der in Ihrem Adreßbuch steht
Recipient.Name = Forms![Notizen zum Kunden]![Text23]

’ 1= „TO:“; 2=„CC:“; 3=„BCC:“
Recipient.Type = 1

’ Entweder Adresse im Adreßbuch finden
’ oder als Internet Adresse [email protected]
’ auswerten lassen
Recipient.Resolve
End With

’ Alle Änderungen im Nachrichten Objekt speichern
Message.Update

’ E-Mail absenden
’ Mit Parameter ShowDialog := True kann die neue
’ Nachricht vor dem Absenden noch einmal geprüft
’ werden, ansonsten auf False setzen
Message.SEND ShowDialog:=True

Session.LOGOFF
MsgBox („Nachricht wurde versandt“)

Set Session = Nothing ’ Object Variable löschen.

MAPIExit:

Exit Function

MAPITrap:

errObj = Err - vbObjectError 'OLE Automation Fehler
Select Case errObj
Case 275 ’ Das Absenden der Nachricht
’ wurde abgebrochen
Resume MAPIExit
Case Else
errMsg = MsgBox(„Error " & errObj & " kam zurück.“)
Resume MAPIExit
End Select
End Function

Ich denke, die Anpassungen sind nicht schwierig!

Gruß
Horst

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