VBA Outlook - Automatisierte Anhänge - Script erweitern
Hallo Leute,
ich würde mein Script:
Sub AnlagenRewe(olMail As MailItem)
Dim att As Attachment, fso As Object, ziel As String, ziel1 As String, ziel2 As String,
Set fso = CreateObject("Scripting.FilesystemObject")
ziel1 = "T:\"
ziel2 = "T:\Fehler"
If olMail.Attachments.Count > 0 Then
If Not fso.FolderExists(ziel1) Then
MsgBox "Das primäre Ziel ist nicht verfügbar. Sekundäres Ziel wird angewählt. Administrator kontaktieren.", vbExclamation
If fso.FolderExists(ziel2) Then
ziel = ziel2
MsgBox "Die Datei wurde erfolgreich im sekundären Ziel gespeichert."
Exit Sub
Else
MsgBox "Das sekundäre Ziel ist nicht erreichbar. Administrator kontaktieren. Die Email wird nun geöffnet.", vbCritical
olMail.Display
Exit Sub
End If
Else
ziel = ziel1
End If
For Each att In olMail.Attachments
att.SaveAsFile ziel & "\" & att.FileName
Next
MsgBox "Die Datei wurde erfolgreich im primären Ziel T:\ gespeichert."
Else
MsgBox "Es ist kein Anhang vorhanden. Die E-Mail wird nun geöffnet.", vbInformation
olMail.Display
End If
End Sub
gern erweitern.
Ist es möglich, dass mir die Massagebox auch den Dateinamen ausgibt?
Ist es möglich, dass mir die Massagebox die Anzahl der gespeicherten Dateien ausgibt für den aktuellen Tag?
Ist es möglich, dass mir der Dateiname zusätzlich in eine -meinetwegen- Textdatei gespeichert wird (am besten mit Zeitstempel)?
ich würde mein Script:
Sub AnlagenRewe(olMail As MailItem)
Dim att As Attachment, fso As Object, ziel As String, ziel1 As String, ziel2 As String,
Set fso = CreateObject("Scripting.FilesystemObject")
ziel1 = "T:\"
ziel2 = "T:\Fehler"
If olMail.Attachments.Count > 0 Then
If Not fso.FolderExists(ziel1) Then
MsgBox "Das primäre Ziel ist nicht verfügbar. Sekundäres Ziel wird angewählt. Administrator kontaktieren.", vbExclamation
If fso.FolderExists(ziel2) Then
ziel = ziel2
MsgBox "Die Datei wurde erfolgreich im sekundären Ziel gespeichert."
Exit Sub
Else
MsgBox "Das sekundäre Ziel ist nicht erreichbar. Administrator kontaktieren. Die Email wird nun geöffnet.", vbCritical
olMail.Display
Exit Sub
End If
Else
ziel = ziel1
End If
For Each att In olMail.Attachments
att.SaveAsFile ziel & "\" & att.FileName
Next
MsgBox "Die Datei wurde erfolgreich im primären Ziel T:\ gespeichert."
Else
MsgBox "Es ist kein Anhang vorhanden. Die E-Mail wird nun geöffnet.", vbInformation
olMail.Display
End If
End Sub
gern erweitern.
Ist es möglich, dass mir die Massagebox auch den Dateinamen ausgibt?
Ist es möglich, dass mir die Massagebox die Anzahl der gespeicherten Dateien ausgibt für den aktuellen Tag?
Ist es möglich, dass mir der Dateiname zusätzlich in eine -meinetwegen- Textdatei gespeichert wird (am besten mit Zeitstempel)?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 260782
Url: https://administrator.de/contentid/260782
Ausgedruckt am: 25.11.2024 um 06:11 Uhr
3 Kommentare
Neuester Kommentar
Lern erst mal die Formatierungen hier im Forum zu nutzen, damit sich hier nicht erst jemand den Code "zurechtrücken" muss damit man ihn einigermaßen lesen kann.
Gruß jodel32
'Öffentliche Variable die die Anzahl der Anlagen des Tages zwischenspeichert
Dim intDayCount as Integer
Sub AnlagenRewe(olMail As MailItem)
Dim att As Attachment, fso As Object, ziel As String, ziel1 As String, ziel2 As String, allAttachments As String
Set fso = CreateObject("Scripting.FilesystemObject")
'Logfile
Const LOGFILE = "C:\temp\logfile.txt"
ziel1 = "T:\"
ziel2 = "T:\Fehler"
If olMail.Attachments.Count > 0 Then
If Not fso.FolderExists(ziel1) Then
MsgBox "Das primäre Ziel ist nicht verfügbar. Sekundäres Ziel wird angewählt. Administrator kontaktieren.", vbExclamation
If fso.FolderExists(ziel2) Then
ziel = ziel2
MsgBox "Die Datei wurde erfolgreich im sekundären Ziel gespeichert."
Exit Sub
Else
MsgBox "Das sekundäre Ziel ist nicht erreichbar. Administrator kontaktieren. Die Email wird nun geöffnet.", vbCritical
olMail.Display
Exit Sub
End If
Else
ziel = ziel1
End If
For Each att In olMail.Attachments
att.SaveAsFile ziel & "\" & att.FileName
'alle Attachments in einem String zusammenfassen
allAtachments = allAttachments & att.Filename & vbNewLine
Next
intDayCount = intDayCount + olMail.Attachments.Count
'Ausgabe der gespeicherten Dateien
MsgBox "Die Datei(en) " & vbNewLine & allAttachments & vbNewline & "wurde(n) erfolgreich im primären Ziel T:\ gespeichert." & vbNewLine & "Heute wurden insgesamt schon " & intDayCount & " Anlagen gespeichert"
'Schreibe die gespeicherten Anlagen in ein Logfile
fso.OpenTextFile(LOGFILE,8).WriteLine "Am " & Now() & " wurden folgende Attachments gespeichert:" & vbNewLine & "=======================" & vbNewLine
Else
MsgBox "Es ist kein Anhang vorhanden. Die E-Mail wird nun geöffnet.", vbInformation
olMail.Display
End If
End Sub
Den Beitrag dann bitte noch auf gelöst setzen.