Auch nach tagelanger Suche im Netz finde ich den Fehler des folgenden Codes einfach nicht.
Das Makro soll _eine_ Mail an alle in einem bestimmten Bereich befindlichen Adressen senden.
Und das unabhängig vom Mail-Programm da es auf verschiedenen Systemen ausgeführt wird.
Oft habe ich Laufzeitfehler 13 zurück bekommen und mit dem aktuellen Code unten schreibt er
keine Adresse in die "An"-Zeile.
Wahrscheinlich nur ein kleiner Fehler, aber ich komm einfach nicht drauf.
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
Private Sub Mail(sAdr As String, Optional sSub As String, _
Optional sBody As String)
Call ShellExecute(0&, "Open", "mailto:" + sAdr + _
"?Subject=" + sSub + "&Body=" + sBody, "", "", 1)
End Sub
Sub MailVersenden()
Dim sAddress As String, sSubject As String, sTxt As String
sAddress = Sheets("MoBi").Range("H5:H28")
sSubject = "Sammelmail an MoBi-Runde"
sTxt = Range("B2").Value
Call Mail(sAddress, sSubject, sTxt)
End Sub