Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1944to1948
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

VBA Outlook Email Betreff automatisch ergänzen

VBA Outlook Email Betreff automatisch ergänzen
21.09.2023 09:50:47
Thomas
Hi zusammen,

ich suche nach folgender VBA Lösung für Email / Outlook 2016.

Ich möchte die aktuell offene Email nach einer 10stellligen Nummer durchsuchen (im Betreff oder Text) die immer mit "111" beginnt.
Wenn es mehrere Nummern gibt, soll eine Fehlermeldung erscheinen, bzw ein Auswahlfeld welche Nummer weiterverarbeitet wird.

Diese Nummer soll dann am Ende des Betreffs in Klammern eingefügt werden: [PREFIX: + "111xxxxxxx" +SUFFIX]

Ich habe es mit Chat GPT probiert, aber so richtig gut ist die Lösung nicht :)

Habt ihr eine Idee? :)

Viele Grüße
Thomas


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

Betreff
Datum
Anwender
Anzeige
AW: VBA Outlook Email Betreff automatisch ergänzen
21.09.2023 10:07:07
Fennek
Hallo,

eigentlich ist es recht einfach, aber ob die Kommunikation mit den Einschränkungen eines Forum geht, ist unklar.

Outlook-VBA


dim EML as mailitem, RegEx as Object, RR as Object

Set RegEx = (regular expression)
regex.pattern = "111\d(8)"
set EML = (aktive Mail, wie auch immer, vermutlich Schleife über den Posteingang)

set rr = regex(EML.Subject & EML.body)

If rr.count > 1 then msgbox "mehrere ID":stop

set eml.subject = eml.subject & " Praefix " & RR(0) & " Suffix"

eml.save


ungeprüft

mfg
Anzeige
AW: VBA Outlook Email Betreff automatisch ergänzen
21.09.2023 11:45:49
MCO
Moin!

Die email erwischt du mit folgendem Code
Sub aktuelle_Mail()


Dim MyOutApp As Object
Dim UN As String
Dim MyOlExp As Object
Dim myOlsel As Object
Dim txt_teile As Variant

Set MyOutApp = CreateObject("Outlook.Application")
Set MyOlExp = MyOutApp.ActiveExplorer
Set myOlsel = MyOlExp.Selection

antw_mng = 0 'setzt die Mengenabfrage zurück
With myOlsel(1)

If InStr(.Subject, "111") > 0 Then
MsgBox .Subject
Else
'text aufteilen
txt = Replace(myOlsel.Item(1).body, Chr(10), " ")
txt = Replace(txt, Chr(13), " ")
txt = Replace(txt, Chr(32), " ")
txt = Replace(txt, ".", " ")
txt = Replace(txt, "_", " ")

txt_teile = Split(txt, " ")

For i = 0 To UBound(txt_teile)
If Left(txt_teile(i), 3) = "111" And Len(txt_teile(i)) = 10 Then
MsgBox text_teile(i)
End If
Next i
End If
End With
Set MyOutApp = Nothing
Set MyOlExp = Nothing
Set myOlsel = Nothing
End Sub


an dem Auswahlfenster musst du noch arbeiten....

Gruß, MCO
Anzeige

315 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige