Es gibt diverse Möglichkeiten, aus Word bzw. VBA heraus eine Mail zu verschicken. So sollten z.B. die MailMerge-Funktionen im Zusammenhang mit MS Outlook verwendet werden.
Soll hingegen eine Mail über das registrierte MAPI-Programm verschickt werden, z.B. AK-Mail, dann lässt sich das mit dem API-Aufruf ShellExecute erreichen.
Diesem API wird der E-Mail-Empfänger, der Betreff und je nach Programm erfolgreich der Mail-Text mitgegeben.
Einschränkung:
Es kann auf diese Weise kein Dateianhang mitangegeben werden. Dazu muss dann wieder auf die MailMerge-Funktion zurückgegriffen werden.
1 Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" (ByVal hWnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, ByVal _
lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
2 Private Const SW_SHOW = 5
3 Sub Mailen()
4 Dim sTo, sSubject, sBody As String
5 sTo = "xy@xyz.abc"
6 sSubject = "Betreff"
7 sBody = "Dieses steht im Mail-Text"
8 ShellExecute hWnd, "open", "mailto:" & sTo & _
" ?Subject=" & sSubject & " &Body=" & sBody, _
vbNullString, vbNullString, SW_SHOW
9 'DoEvents
10 End Sub