Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
984to988
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
984to988
984to988
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Rückmeldung aus Outlook

Rückmeldung aus Outlook
10.06.2008 16:20:00
Benedict
Hallo XL-Cracks!
Dieses Forum war/ist äußerst hilfreich für einen VBA Anfänger wie mich.
Zum folgenden Thema habe ich jedoch noch nichts gefunden:
Aus einem Workbook werden mehrere Mails an Outlook übergeben, und zwar mit ".Display".
Wie bekomme ich eine Rückmeldung, ob eine Mail dann wirklich verschickt wurde?
Ich möchte bewusst nicht ".Send" verwenden, sondern dem Anwender die Möglichkeit zum Canceln in Outlook geben.
Im Workbook wird anschließend vermerkt, ob und wann die Mail verschickt wurde.
Leider momentan auch dann, wenn die Mail in Outlook gecancelt wurde.
Code (Ausschnitte):
'Send Reminder Mails to people with missing TIME SHEETS
Dim OutApp As Object
Dim OutMail As Object
Dim cell As Range
Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon
On Error GoTo cleanup
For Each cell In Sheets("xxx").Range("xxx").Cells.SpecialCells(xlCellTypeConstants)
If cell.Value Like "?*@?*.?*" Then
Set OutMail = OutApp.CreateItem(0)
On Error Resume Next
With OutMail
.To = cell.Value
.Subject = "xxx"
.Body = "xxx"
.Display
End With
On Error GoTo 0
cell.Offset(0, -9).Value = "sent"
cell.Offset(0, -8).Value = Date$
Set OutMail = Nothing
End If
Next cell
Ich vermute, dass man nach dem ".Display" etwas Sinnvolles einfügen muß, oder?
Vielen Dank schon mal!
Benedict

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Rückmeldung aus Outlook
10.06.2008 16:53:00
Johannes
Hi Benedict,
Outlook haelt IMHO hierfuer keine Eigenschaft bereit, aber du kannst den ja dein Excel Modul als Entscheider missbrauchen (ungefaehr so):

Set newMail = OutApp.CreateItem(olMailItem) 'olMailItem ist in Outlook definiert (=0)
With newMail
.To = "empfaenger"
.Subject = "betreff"
.Body = "text"
.Display 'vor dem senden anzeigen
'Bestätigung zum senden einholen
If MsgBox("Soll das Mail gesendet werden ?", vbYesNo) = vbYes Then
.Send
Else
.Delete
End If


Johannes

AW: Rückmeldung aus Outlook
10.06.2008 17:26:40
Benedict
Hallo Johannes,
vielen Dank!
Ich habe deinen Code eingebaut, verstehe die Idee.
Ideale Anwenderfreundlichkeit wäre in diesem 'Workbook-Fall" (leider) das
- Ansehen jeder einzelnen Mail (es sind mehrere hintereinander) in Outlook
- theoretische Editieren einer/mehrerer Mails in Outlook
- Abbrechen im 'letzten Moment' in Outlook
Ich zeige vor dem Übergeben an Outlook bereits eine UserForm mit der Liste der gefilterten Mailempfänger, hier kann der User Ausnahmen definieren.
Insofern SOLLTE es eigentlich in Outlook keine Cancel-Aktion geben.
Wird's aber geben, weil dem User noch einfällt, dass eine Mail aus dem oder dem Grund doch nicht verschickt werden soll. Die Gründe kann man natürlich theoretisch alle schon in Excel berücksichtigen, aber im real existierenden Büroalltag wohl dann doch nicht...
Danke nochmal!
Grüße,
Benedict
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige