798 Aufrufe
Gefragt in Tabellenkalkulation von tomasd Einsteiger_in (53 Punkte)
Hallo,
ich habe eine Frage zu einem älteren Beitrag im Forum:
https://supportnet.de/threads/1191828
Die Lösung von Oliver zum sofortigen Versenden von Serienmails habe ich längere Zeit erfolgreich verwendet. Leider wurde bei uns von Office 2003 auf Office 2010 umgestellt. Seitdem funktioniert dieses Makro nicht mehr. Bitte dringend um Hilfe, was verändert werden muss, damit dies mit Outlook 14 verwendet werden kann. Bin kein Makroexperte.
Mfg
tomasd

1 Antwort

0 Punkte
Beantwortet von
Hallo,
nochmal zur Präzisierung meiner Frage hier der bisher verwendete Code:
Option Explicit

Declare Function CloseHandle Lib "kernel32" _
(ByVal hObject As Long) As Long

Declare Function OpenProcess Lib "kernel32" _
(ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, _
ByVal dwProcessId As Long) As Long

Declare Function TerminateProcess Lib "kernel32" _
(ByVal hProcess As Long, ByVal uExitCode As Long) As Long

Private Const PROCESS_TERMINATE = &H1

Sub Serienmails_versenden()
Dim Outlook_Anwendung As Object, Mail As Object, Wiederholungen, _
Anwendung As DataObject, Nachricht, _
Programmende As Long, Schluß As Long, Spalte As Integer, _
Zeile As Long, Text As String 'einfg ab Spalte


Rem: Bereich, der in die Mail eingefügt werden soll
For Zeile = 1 To 13
For Spalte = 1 To 1
Text = Text & "<br>" & Cells(Zeile, Spalte)
Next
Next
'Shell ("C:\Programme\Express ClickYes\ClickYes.exe")

For Wiederholungen = 2 To Range("L65536").End(xlUp).Row
Set Anwendung = New DataObject
Set Outlook_Anwendung = CreateObject("Outlook.Application")
Set Nachricht = Outlook_Anwendung.CreateItem(0)

With Nachricht
Rem: Text für Betreffzeile wird eingefügt
.Subject = "Sofortinformation !"
Rem: Text für E-Mail wird eingefügt
.HTMLBody = Text
Rem: In die Zeile "An" wird der Empfänger eingetragen
.To = Cells(Wiederholungen, 12)
Rem: Hier wird die Mail angezeigt
Rem:.Display
Rem: Hier wird die Mail gleich in den Postausgang gelegt
.Send
End With
Set Outlook_Anwendung = Nothing
Set Nachricht = Nothing

Next Wiederholungen
'Programmende = Shell("C:\Programme\Express ClickYes\ClickYes.exe", 0)
Schluß = OpenProcess(PROCESS_TERMINATE, False, Programmende)
TerminateProcess Schluß, 0
CloseHandle Schluß

End Sub


Wie kann ich die Serienmail mit neuem Office 2010 versenden ? Vielleicht kann mir jemand helfen. Ansonsten wünsche ich allen Frohe Ostern .

Mfg
tomasd
...