PDA

Vollständige Version anzeigen : Möglichkeiten für Email aus ACCESS


sodah
10.05.2004, 11:58
Hallo,

ich habe bisher einige Möglichkeiten, um eine Email aus ACCESS zu öffnen getestet und bin noch auf der Suche nach einer Weiteren. Ziel soll sein, dass in Access eine Mail geschrieben und gespeichert wird und anschliessend in Outlook geöffnet und noch weiter bearbeitet wird.

1. Möglichkeit
-----------------

DoCmd.SendObject acSendNoObject, , acFormatTXT, An, , , Betreff, Text, True

Hier läßt sich dann die Email bearbeiten, aber Access ist so lange gesperrt, bis die Email versendet wird.


2. Möglichkeit
-----------------

Dim objOutlook As Outlook.Application
Dim objOutlookMsg As Outlook.MailItem
Dim objOutlookRecip As Outlook.Recipient
Dim objOutlookAttach As Outlook.Attachment
Set objOutlook = CreateObject("Outlook.Application")
Set objOutlookMsg = objOutlook.CreateItem(olMailItem)
Set objOutlookRecip = objOutlookMsg.Recipients.Add(Me.An)
objOutlookRecip.Type = olTo
objOutlookMsg.Subject = Me.Betreff
objOutlookMsg.BodyFormat = olFormatRichText
objOutlookMsg.Body = Me.Text
objOutlookMsg.Display
objOutlook = Nothing

Hier ist, Dank Microsoft Sicherheit, eine nervige Abfrage bevor Oulook sich öffnet.

3. Möglichkeit via Hyperlink suche ich noch
-----------------------------------------------------
Soweit ich aus der OnlineHilfe ersehen konnte, kann man auch per VBA einen Button mit einem Hyperlink versehen. Aber so richtig Hilfe gabs da net:

Private Sub cmdFollowLink_Click()
CreateHyperlink Me!cmdFollowLink, Me!txtSubAddress, _
Me!txtAddress
End Sub

Sub CreateHyperlink(ctlSelected As Control, _
strSubAddress As String, Optional strAddress As String)
Dim hlk As Hyperlink
Select Case ctlSelected.ControlType
Case acLabel, acImage, acCommandButton
Set hlk = ctlSelected.Hyperlink
With hlk
If Not IsMissing(strAddress) Then
.Address = strAddress
Else
.Address = ""
End If
.SubAddress = strSubAddress
.Follow
.Address = ""
.SubAddress = ""
End With
Case Else
MsgBox "The control '" & ctlSelected.Name _
& "' does not support hyperlinks."
End Select
End Sub


Vieleicht hat ja jemand einen kleinen Hinweis, wie ich das via Hyperlink realisieren kann.

sodah
10.05.2004, 12:22
Habs wieder mal selber rausgefunden:
War einfacher als ich zuerst dachte.

Der Vorteil ist, dass jeder Emailclient damit funktioniert, dass die Email im clientseitig voreingestellten Format geöffnet wird.

Allerdings muss man hier unbedingt noch Vorarbeit leisten. Wenn die Email als HTML geöffnet werden soll, müssen beispielsweise noch "künstliche" Zeilenumbrüche rein. Dann müssen die & Zeichen ausgetauscht werden usw. Aber es ist auf jeden Fall eine gute Alternative.



Application.FollowHyperlink "mailto:" & Me.An & "?subject=" & Me.Betreff & "&body=" & Me.Text, , True