MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Outlook (Express), sonst. Mailprogramme
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 22.02.2018, 10:42   #1
halweg
MOF Koryphäe
MOF Koryphäe
Standard VBA - E-Mail in an deren Datenordner verschieben

Hallo Spezialisten,

mit folgendem Makro kann ich eine aktuell markierte E-Mail einen anderen Datenordner verschieben. Das funktioniert.
Code:

Sub verschiebetest()
Dim akt_item, text As String
  Set akt_item = ActiveExplorer.Selection.item(1)
  text = "E-Mail-Eigenschaften" & vbLf & _
           "Betreff: " & akt_item.Subject & vbLf & _
           "Ordner: " & akt_item.Parent.Name & vbLf & _
           "Datendatei: " & akt_item.Parent.Parent.Name & vbLf & _
           "Erhalten: " & akt_item.ReceivedTime & vbLf & _
           "ID: " & akt_item.EntryID
  Debug.Print text
  akt_item.Move Session.Folders(3).Folders("Ablage")
  text = vbLf & vbLf & "E-Mail-Eigenschaften" & vbLf & _
           "Betreff: " & akt_item.Subject & vbLf & _
           "Ordner: " & akt_item.Parent.Name & vbLf & _
           "Datendatei: " & akt_item.Parent.Parent.Name & vbLf & _
           "Erhalten: " & akt_item.ReceivedTime & vbLf & _
           "ID: " & akt_item.EntryID
  Debug.Print text
End Sub
Allerdings bekomme ich in der Auswertung des Skriptes vor und nach dem Verschieben die gleiche (die alte) Datendatei und auch die gleiche ID angezeigt. Auch nach einem Sleep von 3s.

Das deutet darauf hin, dass mein "akt_item" nur ein Abbild der markierten E-Mail ist, an dem sich nichts ändert, auch wenn ich die E-Mail verschiebe.

Da ich die ID der verschobenen Mail brauche, suche ich eine Möglichkeit, nach dem Verschieben die Eigenschaften der verschobenen Mail zu ermitteln. Hat jemand eine Idee?

Besten Dank im Voraus, Halweg

__________________

Windows 7, Windows 10, Office 2002, Office 2010
halweg ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 22.02.2018, 10:57   #2
EarlFred
MOF Guru
MOF Guru
Standard

Hallo halweg,

die Move-Methode hat doch das Objekt am neuen Ablageort als Rückgabewert:

Code:

Option Explicit

Sub verschiebetest()
Dim akt_item As Object, Neues_Item As Object
Dim text As String
  Set akt_item = ActiveExplorer.Selection.Item(1)
  text = "E-Mail-Eigenschaften" & vbLf & _
           "Betreff: " & akt_item.Subject & vbLf & _
           "Ordner: " & akt_item.Parent.Name & vbLf & _
           "Datendatei: " & akt_item.Parent.Parent.Name & vbLf & _
           "Erhalten: " & akt_item.ReceivedTime & vbLf & _
           "ID: " & akt_item.EntryID
  Debug.Print text
  Set Neues_Item = akt_item.Move(Session.Folders(3).Folders("Ablage"))
  text = vbLf & vbLf & "E-Mail-Eigenschaften" & vbLf & _
           "Betreff: " & Neues_Item.Subject & vbLf & _
           "Ordner: " & Neues_Item.Parent.Name & vbLf & _
           "Datendatei: " & Neues_Item.Parent.Parent.Name & vbLf & _
           "Erhalten: " & Neues_Item.ReceivedTime & vbLf & _
           "ID: " & Neues_Item.EntryID
  Debug.Print text
End Sub
Grüße
EarlFred

__________________

Datum und Uhrzeit, Makrorekorder-Code entschlacken, {Matrixformeln}
Tutorials zu Pivottabellen: Kurzeinstieg; Dynamischer Datenbereich; Daten und Zeiten gruppieren
Für 5 meiner Beiträge haben sich die Hilfesuchenden mit einer Spende an Wikipedia, die Tafeln oder Hilfe für krebskranke Kinder eV bedankt (das entspricht 0,037% per 04.04.2018) - eine tolle Geste!
EarlFred ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 22.02.2018, 11:08   #3
halweg
Threadstarter Threadstarter
MOF Koryphäe
MOF Koryphäe
Standard

Oh, das ging ja schnell, besten Dank.
Nun habe ich eine Chance, meine Outlook-Verlinkungen vor dem Nirwana durch Archivierung zu schützen.
Ich muss dazu allerdings die Archivierung leider manuell durchführen, also dieser zuvorkommen, zumindest für die verlinkten Elemente. Ansonsten verliere ich die IDs und meine Link-Dateien funktionieren nicht mehr.
Werde es wohl so machen, dass ich bei den Linkdateien den neuen Link (auf das in die Archivdatei verschobene Outlook-Element) in die Linkdatei reinschreibe...

__________________

Windows 7, Windows 10, Office 2002, Office 2010
halweg ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 22.02.2018, 11:16   #4
EarlFred
MOF Guru
MOF Guru
Standard

Hallo halweg,

aber das ist doch eine ganz andere Frage...

Ich weiß zwar nicht, ob die Autoarchivierung das Folder_BeforeItemMove-Ereignis auslöst, aber das wäre zumindest mein erster Ansatz für Recherchen.

Grüße
EarlFred

__________________

Datum und Uhrzeit, Makrorekorder-Code entschlacken, {Matrixformeln}
Tutorials zu Pivottabellen: Kurzeinstieg; Dynamischer Datenbereich; Daten und Zeiten gruppieren
Für 5 meiner Beiträge haben sich die Hilfesuchenden mit einer Spende an Wikipedia, die Tafeln oder Hilfe für krebskranke Kinder eV bedankt (das entspricht 0,037% per 04.04.2018) - eine tolle Geste!
EarlFred ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 22.02.2018, 13:27   #5
halweg
Threadstarter Threadstarter
MOF Koryphäe
MOF Koryphäe
Standard

Danke auch für diesen Tipp. Mal sehen, ob mir da etwas einfällt, wie ich das testen kann...

__________________

Windows 7, Windows 10, Office 2002, Office 2010
halweg ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 22.02.2018, 16:23   #6
H_E_K
MOF User
MOF User
Standard

Zitat: von halweg Beitrag anzeigen

Hallo Spezialisten,

mit folgendem Makro kann ich eine aktuell markierte E-Mail einen anderen Datenordner verschieben. Das funktioniert.

Grüß dich!

Das ist zwar ein sehr kurzes Makro (mit dem von Earl Fred genannten Schönheitsfehler), aber sonderlich komfortabel ist es nicht.
Ich habe ein recht langes, aber sehr komfortables, das ich entpersonalisieren müsste, wenn es dich interessiert. Es hat folgende Eigenschaften:
  • Über eine UserForm (Screenshot) kannst du Filter anlegen, ähnlich wie die Regeln in OL - mit dem Unterschied, dass meine Filter auch funktionieren ;-)
  • Nach vielen Kriterien kannst du Mails in bestimmte Unterordner verschieben, auch in pst-Datendateien oder IMAP-Ordner
  • Dateianhänge können je Filter in bestimmte Ordner auf der HD oder im Netzwerk gesichert werden
  • Beim Anlegen der Filter werden dir sämtliche in OL existierenden Ordner angezeigt (bei mir 179), die du per Klick als Zielordner auswählst
  • Sämtliche Filterdaten werden in einer csv-Datei außerhalb von OL gesichert und von dort beim Start geladen
  • Beim Makrostart werden alle Mails (für die Filter existieren) im Posteingang mit den wichtigsten Details angezeigt, du kannst sie einzeln oder in Gruppen zum Verschieben auswählen (Screenshot)
  • und vieles mehr...
Ach ja: läuft in Outlook 2013

Bei Interesse PN oder direkte Email.


__________________

Gruß
Hans


Mit VBA löst du jedes Problem - und schaffst mindestens zwei neue ...
Windows 7 Pro, Windows 10 Home, Office 2013 H&S
H_E_K ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 22.02.2018, 16:48   #7
halweg
Threadstarter Threadstarter
MOF Koryphäe
MOF Koryphäe
Standard

Oh ja, danke Hans. Da hast du ja für deine Filter eine tolle Verwaltung gebaut. Ich nutze dafür Regeln und Kategorien, habe ansonsten meine Filtereinstellungen direkt in VBA.

Auch bei mir unter der Haube toben natürlich auch jede Menge Skripte mit ähnlichen Aufgaben. Bin allerdings kein Freund großer Dialoge, Ziel ist, dass alles im Hintergrund oder auf Knopfdruck passiert. So wird bei mir z. B., wenn ich eine oder mehrere Mails markiere und meinen persönlichen Action-Button drücke (auf mittlere Maustaste gelegt), die aktuelle Mail analysiert und auf Basis einer Reihe von Merkmalen in einen Ordner verschoben bzw. es wird noch ein Journaleintrag erzeugt.

Die oben angesprochene Verschiebung ins Archiv müsste eben auch automatisch laufen und der System-Archivierung zuvorkommen, daran arbeite ich noch.

__________________

Windows 7, Windows 10, Office 2002, Office 2010
halweg ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 22.02.2018, 16:50   #8
H_E_K
MOF User
MOF User
Standard

Zitat: von halweg Beitrag anzeigen

Die oben angesprochene Verschiebung ins Archiv müsste eben auch automatisch laufen und der System-Archivierung zuvorkommen, daran arbeite ich noch.

Warum schaltest du die Autoarchivierung nicht ab? Das kannst du doch per VBA viel besser und gezielter.
Und das mit der automatischen Ausführung wäre bei dir ja kein Problem über die With_Events Funktion.

__________________

Gruß
Hans


Mit VBA löst du jedes Problem - und schaffst mindestens zwei neue ...
Windows 7 Pro, Windows 10 Home, Office 2013 H&S
H_E_K ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 22.02.2018, 17:04   #9
halweg
Threadstarter Threadstarter
MOF Koryphäe
MOF Koryphäe
Standard

Ja, klar, aber das muss ich erst noch programmieren. Es geht ja nicht nur darum, E-Mails, Aufgaben, Termine und Journaleinträge aus zig Ordnern nach verschiedenen Bedingungen in das Archiv zu verschieben, sondern ich muss ja nun auch die Linkdateien dazu mit den neuen IDs füllen. Alles kein Hexenwerk, aber auch nicht in 5 Minuten erledigt.

Ist aber gut zu wissen, dass sich hier jemand mit Versandhandel auskennt
Mein Spezialgebiet ist übrigens Softwareprüfung...

__________________

Windows 7, Windows 10, Office 2002, Office 2010
halweg ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 22.02.2018, 17:09   #10
H_E_K
MOF User
MOF User
Standard

Zitat: von halweg Beitrag anzeigen


Ist aber gut zu wissen, dass sich hier jemand mit Versandhandel auskennt

Naja, was willst du machen, wenn du im ländlichen Raum wohnst? Hier vor Ort bekomme ich nur einen Bruchteil der Auswahl und schlechte, eigennützige Beratung - wenn überhaupt.

Zitat:

Mein Spezialgebiet ist übrigens Softwareprüfung...

Auf Code-Ebene oder auf Anwender-Ebene? Mit VB / VBA kommst du da ja nicht weit.

__________________

Gruß
Hans


Mit VBA löst du jedes Problem - und schaffst mindestens zwei neue ...
Windows 7 Pro, Windows 10 Home, Office 2013 H&S
H_E_K ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 22.02.2018, 17:25   #11
halweg
Threadstarter Threadstarter
MOF Koryphäe
MOF Koryphäe
Standard

Zitat: von H_E_K Beitrag anzeigen

Auf Code-Ebene oder auf Anwender-Ebene? Mit VB / VBA kommst du da ja nicht weit.

Auf Anwendungsebene, zielgruppenorientiert, so mit TÜV Prüfung usw. VBA ist der kreativste Teil meiner Tätigkeit und eher ein Hobby.
Ist aber hier Offtopic, also ggf. per PN mehr...

__________________

Windows 7, Windows 10, Office 2002, Office 2010
halweg ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.