Thema Datum  Von Nutzer Rating
Antwort
Rot VBA Skript Sichern von Anhängen
10.03.2022 09:13:26 VBANoob1723
Solved
13.01.2023 21:35:41 Manuel K
NotSolved

Ansicht des Beitrags:
Von:
VBANoob1723
Datum:
10.03.2022 09:13:26
Views:
1120
Rating: Antwort:
 Nein
Thema:
VBA Skript Sichern von Anhängen

Guten Morgen VBA Profis,

Ich habe die Aufgabe bekommen ein Skript zu erstellen dass Anhänge aus einem Postfach in Outlook in einen Ordner kopiert und diese einen neuen Namen gibt. Welchen Namen die Datei bekommt wäre nicht wichtig, es muss nur ein neuer Name vergeben werden da die Datei die per Mail kommt immer den gleichen Namen hat. Ein funktionierendes Skript dass die Anhänge speichert habe ich schon, nur wenn ich versuche dass nur .pdf dateien geladen werden sollen funktioniert es nicht mehr. Oder anderesherum, ich habe mit viel Googeln und rumprobieren ein Skript dass nur .pdf Dateien lädt, aber der Name wird nicht wie gewünscht geändert.

Hier das Skript dass alle Anhänge holt und den namen anpasst:

Public Sub saveAttachtoDisk(itm As Outlook.MailItem)

    Dim objAtt As Outlook.Attachment

    Dim saveFolder As String

        saveFolder = "C:\Users\USER\Documents\Anhange\"

    Dim dateFormat As String

        dateFormat = Format(itm.ReceivedTime, "yyyy-mm-dd Hmm ")

    For Each objAtt In itm.Attachments

        objAtt.SaveAsFile saveFolder & "\" & dateFormat & objAtt.DisplayName

    Next

End Sub

Und hier welches nur .pdf holt.

Public Sub Anhaenge_handeln(myItem As Outlook.MailItem)
 Dim mAtts As Attachments
 Dim mAtt  As Attachment
 Dim sFile As String, P As Integer
 Set mAtts = myItem.Attachments
 While mAtts.Count > 0
   Set mAtt = mAtts(1)
   sFile = mAtt.DisplayName
   If sFile Like "*.pdf" Then
      P = InStrRev(sFile, ".")
      mAtt.SaveAsFile "C:\Users\USER\Documents\Anhange\" & Format$(Date, "yyyymmdd hhmmss") & mAtts.Count & sFile
   ElseIf sFile Like "Auswertung*" Then
   End If
   mAtts.Remove 1
 Wend
End Sub

 

Es wird zwar auch ein neuer Name erzeugt, aber nur mit dem aktuellen Datum, nicht z.B. dem Eingangsdatum der Mail.

 

Wisst ihr wie das erste Skript dazu bekomme einfach nur .pdf Dateien zu sichern und dann das Eingangsdatum als Name der Datei anzugeben?

Es gibt dann noch das Problem dass das Skript dann zwar bei mir in einer Regel funktioniert, aber nicht beim User der es nutzen müsste, aber das könnte ich hinbekommen.

Habt ihr einen Tip?


Danke :)


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot VBA Skript Sichern von Anhängen
10.03.2022 09:13:26 VBANoob1723
Solved
13.01.2023 21:35:41 Manuel K
NotSolved