62741
Goto Top

Emails mit selbem Betreff filtern im Posteingang,aktuellstes behalten, altes verschieben

Hallo allerseits,

Wie bereits im Titel erwähnt suche ich eine Möglichkeit, eintreffende Emails im Outlook zu filtern, und bei solchen mit dem selben Betreff nur immer das aktuellste zu behalten.

Es geht um automatische Emailbenachrichtigungen, wir werden immer über Aktualisierungen informiert, da kommen täglich hunderte Mails, und da bräuchte ich jeweils nur das aktuellste.

Wisst ihr ob man:
- Wenn ein Email eintrifft abfragen kann ob ein Email mit demselben Betreff im Posteingang schon vorhanden ist

- Falls ja, das bereits vorhandene Email in einen Ordner verschieben und das neu eingetroffene (aktuellste Info) im Posteingang behalten

Ich hoffe ihr habt eine Idee.

Danke und liebe Grüsse

Lucy

Content-Key: 83115

Url: https://administrator.de/contentid/83115

Printed on: April 23, 2024 at 08:04 o'clock

Member: Dani
Dani Mar 15, 2008 at 15:36:16 (UTC)
Goto Top
Hi Lucy,
wie sind denn die Mails in deinem Posteingang sortiert?! Nach Erhaltsdatum, Titel, etc....
Am Einfachsten wäre nach DAtum, somit würde auto. die neuste Mail oben stehen.


Grüße
Dani
Mitglied: 62741
62741 Mar 17, 2008 at 10:51:18 (UTC)
Goto Top
Hallo Dani,

Danke für deine Antwort. Die Mails sind nach Datum sortiert, und ja genau, das aktuellste ist somit immer zu oberst! Hast du eine Idee?

Grüsse
Member: Dani
Dani Mar 17, 2008 at 18:54:37 (UTC)
Goto Top
Abend Lucy,
hab mal mein Fall ein wenig umgestrickt. Testen konnte ich es nicht, weil meine Mails mir heilig sind. face-smile

	'Deklaration  
    Dim FolderInbox As MAPIFolder
    Dim FolderDest As MAPIFolder
    
    Dim Mails As Outlook.Items
    Dim Mail As Object
	Dim Jump as String
    
	
    'Outlook als Object erstellen  
    Set MyOLApp = CreateObject("Outlook.Application")  
    Set myNameSpace = MyOLApp.GetNamespace("MAPI")  
    
    'Default-Mailbox nehmen.. manche haben nur eine, andere ein Dutzend  
    ' die aktive Mailbox laut Profil ist logischerweise der Parent (neudeutsch für "Vadder" vom "Posteingang"  
    Set FolderInbox = myNameSpace.GetDefaultFolder(olFolderInbox)
    Set FolderDest = FolderInbox.Parent.Folders("Gelöschte Objekte")  
    
    
	jump="0"  
    Set Mails = FolderInbox.Items
    Set Mail = Mails.Find("[Subject]  <> '\-\-\-\-\-\-\-\-\-\-\-\-/-/-/-/-/-/-/-/-/-/-/' ")  
    Do While TypeName(Mail) <> "Nothing"  
	
		If (1, jump, "0", vbTextCompare) <> 0 Then   
			jump=1
			
		ElseIf (InStr(1, Mail.Subject, "Dein BETREFF", vbTextCompare)) <> 0 Then  
            Mail.UnRead = False
            Mail.Move FolderDest
			
        End If
		
		'Makiert die nächste Mail  
        Set Mail = Mails.FindNext
    Loop

	
    'Variablen löschen  
    Set myNameSpace = Nothing
    Set FolderDest = Nothing
    
    Set Mails = Nothing
    Set Mail = Nothing
Nicht vergessen, die entsprechenden Stellen anzupassen!


Grüße
Dani
Mitglied: 62741
62741 Mar 18, 2008 at 12:07:33 (UTC)
Goto Top
Hallo Dani,

Danke für den Code, ich habs jetzt mal ausprobiert, bei folgender Zeile bringt mir Outlook jedoch eine Fehlermeldung (Fehler beim Komplimieren, Syntaxfehler):

If (1, jump, "0", vbTextCompare) <> 0 Then

So weit ich den Code verstanden habe, wird der Betreff fest drin stehen.. ich habe aber mehrere solcher fälle mit diversen betreffs, muss ich dann jeden betreff im code einbauen?

liebe Grüsse

Lucy
Member: Dani
Dani Mar 18, 2008 at 19:14:55 (UTC)
Goto Top
Abend,
ändere mal die Pasche "jump="0"" durch "Set jump="0" ab. Dann sollte es gehen. Im Moment schon...schau einfach mal bei meinem alten Beitrag nach. Da hat bastla eine Schleife drum rum gebaut. *g*


Grüße
Dani
Member: paty84
paty84 Oct 22, 2008 at 07:02:57 (UTC)
Goto Top
Hallo Dani

Ich beschäftige mich mit dem selben Problem.

Nach dem Ändern der Zeile:
If (1, jump, "0", vbTextCompare) <> 0 Then
in
If StrComp(Jump, "0", vbTextCompare) <> 0 Then
habe ich dein Script zum Laufen gebracht.

Das Problem ist nun aber dass alle Mails mit dem genannten Betreff gelöscht werden und nicht die neuste Version im Posteingang stehen bleibt. Ist es überhaupt möglich eine Abfrage nach dem "Neusten", bzw nach dem Prinzip "is newer/older then" zu machen?

Gruss
Paty