Datum/Termin in eingehenden Mail finden und in Kalender

Antwort erstellen

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :razz: :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :badgrin: :doubt:
BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet
Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Datum/Termin in eingehenden Mail finden und in Kalender

Re: Datum/Termin in eingehenden Mail finden und in Kalender

Beitrag von Fen » 20. Aug 2021, 13:56

So klappt es auch mit der Zeit:

Code: Alles auswählen
Function fn_GetFirstDateStringFromText(ByVal Tx As String) As Date
Dim RR As Object, Tag As Date

RegEx.Pattern = "\b\d{1,2}\.\s[\wä]+\s\d{4}\s\d{2}[:]\d{2}\b"

If Not RegEx.Test(Tx) Then Exit Function

Set RR = RegEx.Execute(Tx)

Tag = RR(0)

If Tag > Now Then
    fn_GetFirstDateStringFromText = Tag
Else
    fn_GetFirstDateStringFromText = 0
End If
Set RR = Nothing
End Function


Alle Datum (pl) der Vergangenheit werden als 0 zurückgegeben und dürfen nicht in den Kalender eingetragen werden.

Re: Datum/Termin in eingehenden Mail finden und in Kalender

Beitrag von DerHoepp » 20. Aug 2021, 12:50

Moin,

damit die "93. Bundesjugendspiele 1989" nicht auch zu einem gültigen Treffer führen, würde ich die Matches noch jeweils in ein Datum wandeln, von da wieder in einen String um beides zu vergleichen.

Und noch eine kleine Anmerkung: Fenneks Function würde ich übrigens GetFirstDateStringFromText() benamen, dann sagt der Name schon aus, was er tut. Zudem sei noch darauf hingewiesen, dass .Execute() beim RexExp-Objekt erst nach .Test() aufgerufen werden sollte oder das Ergebnis auf Nothing zu prüfen wäre.

Viele Grüße
derHöpp

Re: Datum/Termin in eingehenden Mail finden und in Kalender

Beitrag von Fennek » 20. Aug 2021, 11:17

Hallo,

hier ein für "4. April 2021" getester Code:

Code: Alles auswählen
Function fn_Datum(ByVal Tx As String) As String
Dim RR As Object, Tag As Date

RegEx.Pattern = "\b\d{1,2}\.\s\[wä]+\s\d{2}:\d{2}\b"
RegEx.Pattern = "\b\d{1,2}\.\s[\wä]+\s\d{4}\b"

Set RR = RegEx.Execute(Tx)

Tag = RR(0)

fn_Datum = Tag

Set RR = Nothing
End Function


Für Deine Aufgabe würde das für den Email.body durchgeführt. Als Beispiel in Excel siehe die beigefügte Datei.

mfg

Re: Datum/Termin in eingehenden Mail finden und in Kalender

Beitrag von Fen » 20. Aug 2021, 07:16

Hallo,

für die Datumssuche würde ich RegEx nutzen. Das Such-Pattern ist so ähnlich:

Code: Alles auswählen
.Pattern = "\d{1,2}\.\s\w+\sum\s\d{2}:\d{2}\b"


19. August um 11.00

mfg

Re: Datum/Termin in eingehenden Mail finden und in Kalender

Beitrag von Ichduersieeswir » 19. Aug 2021, 21:14

Hallo danke für die schnelle Antwort.

Es wäre standardisiert.
Beispiel: 19. August um 11.00

Das ist mir bewusst, dass man das Ganze noch mit einigen Schlagworten ausfindig machen muss. Ich denke daran zum Beispiel, dass die Worte "Terminbestätitung" oder "Teamsbesprechnung" wichtige Schlagworte wären, welche im Body gesucht werden müssten.

Ein Datum suchen: Macht man das mit der Funktion datevalue?

mfg

Re: Datum/Termin in eingehenden Mail finden und in Kalender

Beitrag von Fen » 19. Aug 2021, 17:25

Hallo,

den body einer Email nach einem Datum zu durchsuchen, ist relativ einfach. Zu erkennen, ob dies ein gewünschter Termin für einen Kundenbesuch ist, könnte zu Verwechslungen führen.

Gibt es ein standardisiertes Datumsformat? Oder ist alles möglich?

mfg

Datum/Termin in eingehenden Mail finden und in Kalender

Beitrag von Ichduersieeswir » 19. Aug 2021, 16:57

Hallo Leute
Hat jemand Erfahrung bzw. überhaupt machbar:
Datum/Termin in eingehenden Mail finden und in Kalender als Termin eintragen. Dies hätte den Vorteil, dass Kundentermine nicht verloren gingen.

Gruss

Nach oben