Registriert seit: 09.05.2015
Version(en): 2013, Office 365
14.10.2018, 12:22
(Dieser Beitrag wurde zuletzt bearbeitet: 14.10.2018, 12:22 von sharky51.)
Hallo André,
ich komme nicht so recht weiter, denn es handelt sich nur um mails.
In der Überwachung sehe ich wenn das Makro abbricht leider nichts - nur das hier.
Watch : : objMsg : Nothing : MailItem : Mod_Mailimport.MailsImportieren
Wo müsste ich denn auf das MailItem abfragen?
Nachtrag:
Ich glaube ich habe herausgefunden warum das Makro nicht durchläuft. Es stolpert über eine Lesebestätigung und listet diese dann auch nicht auf.
Aber ich benötige diese (alle) Lesebestätigungen leider auch in der Auflistung aller Mails in einem Ordner.
Wie müsste das Marko aussehen damit ich diese auch auflisten kann bzw. keine Fehlermeldung bekomme?
Hoffe Du, Ihr könnt mir da noch weiterhelfen!?
Mit freundlichen Grüßen / Best regards
//
----------o00o---°(_)°---o00o----------------------
Erich
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
14.10.2018, 16:01
(Dieser Beitrag wurde zuletzt bearbeitet: 14.10.2018, 16:01 von schauan.)
Hallo Erich,
füge noch einen Else-Zweig hinzu, im Prinzip erst mal nur:
If TypeName(objMsg) = "MailItem" Then
...
Else
Stop
End If
Dann schaust Du in der Überwachung Dein Objekt an und was Du davon für Eigenschaften auslesen willst. Ob das dann mit Deiner
Function EmailTextExtraction(Field As String, Message As Outlook.MailItem)
geht, sei mal dahingestellt. Zumindest müsstest Du die Message als Object deklarieren oder eben für die Lesebestätigung eine Function mit dem ReportItem erstellen.. Wenn Du weitere Typen drin hast und listen willst, musst Du das entsprechend berücksichtigen (Einladung = MeetingItem)
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:1 Nutzer sagt Danke an schauan für diesen Beitrag 28
• sharky51
Registriert seit: 09.05.2015
Version(en): 2013, Office 365
Hallo André,
jetzt bin ich ein Stückchen weiter.
Ich habe mal folgendes probiert:
Code:
Dim objMsg As Object
......
If TypeName(objMsg) = "MailItem" Or TypeName(objMsg) = "ReportItem " Then
LRow = LRow + 1
myAr(LRow, 1) = lngAnzahl
myAr(LRow, 2) = objMsg.SenderEmailAddress 'Mail- Adresse
myAr(LRow, 3) = objMsg.ReceivedTime 'Datum
myAr(LRow, 4) = objMsg.Subject 'Betreff
myAr(LRow, 5) = objMsg.To 'Empfänger
Else
Stop
End If
......
Der Stopp im Else-Zweig wiederspiegelt genau diese "Lesebestätigungs-Rückmeldung wo das Ganze dann hängen bleibt.
Wenn ich den Else-Zweig auskommentiere läuft der Code ohne Fehler durch, aber leider wird das ReportItem nicht aufgelistet.
Bzw. was muss angegeben werden um dieses Item aufzulisten?
Vielen Dank für eine weitere Rückmeldung!
Mit freundlichen Grüßen / Best regards
//
----------o00o---°(_)°---o00o----------------------
Erich
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo Erich,
das ReportItem muss in den Else-Zweig...
If TypeName(objMsg) = "MailItem" Then
...
ElseIf TypeName(objMsg) = "ReportItem" Then
Stop
End If
Was man da rausholen kann, steht z.B. bei MS:
https://docs.microsoft.com/de-de/office/...ReportItem
oder eben in der Überwachung.
Da siehst Du, dass es z.B. keinen Sender und kein To gibt. Dazu müsstest Du z.B. den Body auseinander nehmen, z.B. mit INSTR nach An, Gesendet, wurde am … gelesen suchen und den Teilstring bis zum Zeilenvorschub extrahieren. Allerdings müsstest Du eventuell auch prüfen, wie so eine Lesebestätigung bei verschiedenen E-Mail-Programmen und Sprachversionen aussieht.
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)