Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
520to524
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
520to524
520to524
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Feststellen, ob mailitem (Outlook) ber, versendet

Feststellen, ob mailitem (Outlook) ber, versendet
23.11.2004 07:38:10
Bjoern
Huhu zusammen,
mit dem nachstehenden Code:
-----------------------------------------

Sub versenden()
Do While i < 100
Dim objOutlook As Outlook.Application
Dim objOutlookMsg As Outlook.MailItem
Dim objOutlookRecip As Outlook.Recipient
Set objOutlook = CreateObject("Outlook.Application")
Set objOutlookMsg = objOutlook.CreateItem(olMailItem)
With objOutlookMsg
.To = "test@keinemail.de"
.Subject = "Test"
.HTMLBody = "<html><body>Test-Mail</body></html>"
.Display
Application.Wait Now + TimeSerial(0, 0, 1)
SendKeys "%S", True
'Sendkeys-Schleife:
dim z%
z = 1
Do While z < 10
.Display
SendKeys "%{s}", True
z = z + 1
DoEvents
Loop
End With
Set objOutlook = Nothing
Set objOutlookRecip = Nothing
Set objOutlookMsg = Nothing
i = i + 1
Loop
End Sub

-----------------------------
will ich die Sicherheitsfragen in OL umgehen (.Display und sendkeys "%s"). Das funktioniert auch weitgehend. Problem aber: Die sendkeys-Methode ist nicht sehr zuverlässig. Manchmal bliebt die Mail im nach ".Display" angezeigten Fenster "hängen". Um etwas mehr Zuverlässigkeit zu erzielen, möchte ich in einer folgenden Schleife einige Male die beiden Befehle ".Display" und sendkeys"%s" ausführen. Problem hierbei: Fehlermeldung, wenn die Mail(objOutlookMsg ) doch bereits verschickt wurde: "Das Objekt wurde verschoben oder gelöscht."
Um das zu verhindern, würde ich die Schleife gerne nur dann ausführen, wenn objOutlookMsg noch nicht versendet wurde. Wie läßt sich das abfragen? 'If Is Nothing objOutlookMsg Then' hilft hier ebenso wenig weiter (da Objekt noch existiert) wie 'If objOutlookMsg = "" Then'. Auch die Abfrage objOutlookMsg.sent funktioniert nur, solange die Mail noch nicht versendet wurde (Msgbox-AW: false). Hat jemand eine Idee / Lösung?
Vielen Dank für Eurere Tipps und Anregungen!
Viele Grüße
Björn

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Feststellen, ob mailitem (Outlook) ber, versendet
Papaloma
Hallo...
was ist mit der Mapi?

Private Sub CommandButton1_Click()
MAPISession1.SignOn
MAPIMessages1.SessionID = MAPISession1.SessionID
UserForm1.MAPIMessages1.Compose
UserForm1.MAPIMessages1.RecipDisplayName = "papaloma@testmail.de"
UserForm1.MAPIMessages1.MsgSubject = "Testmail"
UserForm1.MAPIMessages1.MsgNoteText = TextBox1.Text '(Variable)
UserForm1.MAPIMessages1.ResolveName
UserForm1.MAPIMessages1.Send
MAPISession1.SignOff
End Sub

geht auch oder?
AW: Feststellen, ob mailitem (Outlook) ber, versendet
23.11.2004 23:33:01
Bjoern
Huhu Papaloma,
es gibt eíniges...es gibt bspw auch CDO, welches auch meinem Rechner sogar ohne weiteres läuft - iGgs zu o.g. Vorschlag. Methode oder ... nicht gefunden heißt es da beim Versuch die Rotine auszuführen bei compose... Verweis auf eine Ojektbib habe ich im Katalog nicht gefunden. Abgesehen davon würde ich die Mails gerne über Ol schicken..allein schon aus Doku-Gründen.... Daher nochmals die Bitte zu prüfen, ob es für o.g. Fragestellung, eine Lösung gibt. Vielen Dank!
Viele Grüße
Björn
Anzeige
AW: Feststellen, ob mailitem (Outlook) ber, versendet
Sven
Mit On Error abfragen, ob ein Fehler aufgetreten ist.
mfg Sven

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige