vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
VBA + E-Mails als TXT speichern 
Autor: Chris31
Datum: 11.11.09 08:55

Erstmal Guten morgen an alle ;)

Da ich recht neu in dem Bereich VBA bin hab ich auch gleich mal ein Problem...

Habe im Internet folgendes Script gefunden, dass mir alle eingehenden E-Mails als txt Dateien speichert. Funktioniert soweit auch gut.

Habe mir in Outlook jetzt einen Filter angelegt der mir meine E-Mails in einen eigenen Ordner mit
dem Namen "EingangTXT" verschiebt.

Möchte das Script jetzt so anpassen, dass er diesen Ordner statt dem Standard-Posteingang benutzt.

Weiss jemand wie ich das Script anpassen muss?

Hier das benutzte Script:


Option Explicit
 
Public Enum olSaveAsTypeEnum
  olSaveAsTxt = 0
  olSaveAsRTF = 1
  olSaveAsMsg = 3
End Enum
 
Private WithEvents Items As Outlook.Items
 
Private Const MAIL_PATH As String = "d:\mails\"
 
Private Sub Application_Startup()
  Dim Ns As Outlook.NameSpace
 
  Set Ns = Application.GetNamespace("MAPI")
  Set Items = Ns.GetDefaultFolder(olFolderInbox).Items
End Sub
 
Private Sub Items_ItemAdd(ByVal Item As Object)
  If TypeOf Item Is Outlook.MailItem Then
    SaveMailAsFile Item, olSaveAsMsg, MAIL_PATH
  End If
End Sub
 
Private Sub SaveMailAsFile(oMail As Outlook.MailItem, _
  eType As olSaveAsTypeEnum, _
  sPath As String _
)
  Dim dtDate As Date
  Dim sName As String
  Dim sFile As String
  Dim sExt As String
 
  Select Case eType
    Case olSaveAsTxt: sExt = ".txt"
    Case olSaveAsMsg: sExt = ".msg"
    Case olSaveAsRTF: sExt = ".rtf"
    Case Else: Exit Sub
  End Select
 
  sName = oMail.Subject
  ReplaceCharsForFileName sName, "_"
 
  dtDate = oMail.ReceivedTime
  sName = Format(dtDate, "yyyymmdd", vbUseSystemDayOfWeek, _
    vbUseSystem) & Format(dtDate, "-hhnnss", _
    vbUseSystemDayOfWeek, vbUseSystem) & "-" & sName & sExt
 
  oMail.SaveAs sPath & sName, eType
End Sub
 
Private Sub ReplaceCharsForFileName(sName As String, _
  sChr As String _
)
  sName = Replace(sName, "/", sChr)
  sName = Replace(sName, "\", sChr)
  sName = Replace(sName, ":", sChr)
  sName = Replace(sName, "?", sChr)
  sName = Replace(sName, Chr(34), sChr)
  sName = Replace(sName, "<", sChr)
  sName = Replace(sName, ">", sChr)
  sName = Replace(sName, "|", sChr)
End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
VBA + E-Mails als TXT speichern1.302Chris3111.11.09 08:55

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel