Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1804to1808
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
Inhaltsverzeichnis

Outlook ActiveInspector

Outlook ActiveInspector
20.01.2021 11:56:00
Rolf
Liebe Forumspezialisten
In einem Excel lasse ich mir verschiedene Mails anzeigen. Mit click auf einen Button lass ich mir die Mail anzeigen und mit Click auf einen anderen Button lass ich mir die Mail wieder schliessen. Dazu verwende ich die beiden folgenden Codes:
Public Sub msgDateioeffnen()
On Error GoTo Fehler1
Dim objApp As Object   'Outlook.Application
Dim objitem As Object  'Outlook.MailItem
Set objApp = CreateObject("Outlook.Application")
Set objitem = objApp.Session.OpenSharedItem(PfadAktuell)
objitem.display
Set objApp = Nothing
Set objitem = Nothing
Exit Sub
Fehler1:
MsgBox "Mail ist schon geöffnet"
End Sub

Public Sub Mailschliessen(aktMail)
Dim objApp As Object                                       'AktMail As Object,
Set objApp = CreateObject("Outlook.Application")       'OutlookVerweis
If Not objApp.activeinspector Is Nothing Then      'Pruefung auf offene Mail
With objApp.activeinspector.CurrentItem()
.Close False                              'Aktuelle Mail schliessen
End With
Else
MsgBox "Die Mail ist nicht mehr geöffnet"
End If
Set objApp = Nothing
End Sub
Das klappt soweit ganz gut. Das Problem ist nur, wenn ich eine weitere Mail öffne, wird die natürlich als currentitem im ActiveInspector geführt und entsprechend gelöscht. ich möchte aber nur meine zuerst geöffnete mail schliessen. Wie kann ich den close befehl auf diese bestimmte mail ausführen?
ich hoffe ich habe mich klar ausgedrückt und könnt das so nachvollziehen. Für jede Hilfe bin ich sehr dankbar.
Grüsse Rolf

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Outlook ActiveInspector
20.01.2021 15:16:58
ChrisL
Hi Rolf
Die Variable objItem als Public deklarieren und nicht gleich wieder leeren.
Public objItem As Object

Public Sub msgDateioeffnen()
Dim objApp As Object
Dim PfadAktuell As String
PfadAktuell = "O:\Pfad\Datei.msg"
On Error GoTo Fehler1
Set objApp = CreateObject("Outlook.Application")
Set objItem = objApp.Session.OpenSharedItem(PfadAktuell)
objItem.Display
Set objApp = Nothing
Exit Sub
Fehler1:
MsgBox "Mail ist schon geöffnet"
End Sub

Sub schliessen()
objItem.Close False
Set objItem = Nothing
End Sub

cu
Chris
Anzeige
AW: Outlook ActiveInspector
20.01.2021 16:31:41
Rolf
Hallo Chris
Super. Vielen Dank. Funktioniert wie gewünscht. Manchmal sieht man den Wald vor lauter Bäume nicht mehr.
Gruss Rolf
AW: Outlook ActiveInspector
21.01.2021 17:22:11
Rolf
Hallo Chris
Hättest du mir noch eine Idee wie ich vorgehen muss um eine Antwort auf dieses Mail zu verfassen?
ich habe es bisher auch über den activeinspector gelöst.
With olApp.activeinspector.CurrentItem()
Set myAnswer = .Reply
.Close False
End With
Gibt's dazu auch Alternativen?
Vielen Dank für jede Hilfe und Gruss
Rolf
AW: Outlook ActiveInspector
22.01.2021 07:59:54
ChrisL
Hi Rolf
Sub antworten()
Dim objReply As Object
Set objReply = objItem.Reply
objItem.Close False
objReply.Display
Set objItem = Nothing
Set objReply = Nothing
End Sub
cu
Chris
Anzeige
AW: Outlook ActiveInspector
24.01.2021 17:48:41
Rolf
Hallo Chris
Super funktioniert einwandfrei. Vielen Dank für deine Hilfe.
Gruss und schönes Wochenende
Rolf

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige