Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1748to1752
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Automatische Speicherung von bestimmten Outlook Anhängen

Automatische Speicherung von bestimmten Outlook Anhängen
01.04.2020 11:44:48
bestimmten
Hallo zusammen,
ich nutze bisher zur automatisierten Speicherung von angehängten Dateien in Outlook folgendes Makro zusammen mit einer Regel:
Public Sub Anhaenge_handeln(myItem As Outlook.MailItem)
Dim mAtts As Attachments
Dim mAtt As Attachment
Set mAtts = myItem.Attachments
While mAtts.Count > 0
Set mAtt = mAtts(1)
mAtt.SaveAsFile "C:\meinSpeicherort\" & mAtt.DisplayName
mAtts.Remove 1
Wend
End Sub
Tut soweit auch was es soll. Mein Problem ist nun folgendes:
Ich bekomme regelmäßig Mails mit Anhängen, die folgendes Format haben: "DQuote_wochenreport ST 2020 KW 07" ... "DQuote_wochenreport ST 2020 KW 08" usw.
Nun würde ich gerne zur weiteren Verarbeitung dieser Anhänge den Namen beim Abspeichern ändern bspw in "DQuote_wochenreport ST 2020 aktuell"
Wenn eine neue Auswertung per Mail kommt, soll die alte mit diesen Daten also überschrieben werden. Dazu soll der Großteil des Namens der Datei erhalten bleiben, nur am Ende soll die Bezeichnung der KW weg.
Nun habe ich leider keine Ahnung, wie ich das anstellen soll ... meine VBA Kenntnisse sind leider nicht so gut, wie sie sein sollten.
Kann mir dabei jemand helfen?
Viele Grüße
Nico

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Automatische Speicherung von bestimmten Outlook Anhängen
01.04.2020 12:01:31
bestimmten
Hallo Nico,
hier eine Möglichkeit (ungeprüft)
Public Sub Anhaenge_handeln(myItem As Outlook.MailItem)
Dim mAtts As Attachments
Dim mAtt As Attachment
Dim sFile As String
    Set mAtts = myItem.Attachments
    While mAtts.Count > 0
        Set mAtt = mAtts(1)
        sFile = Left$(mAtt.DisplayName, Len(mAtt.DisplayName) - 5) & "aktuell"
        mAtt.SaveAsFile "C:\meinSpeicherort\" & sFile
        mAtts.Remove 1
    Wend
End Sub

Anzeige
AW: Automatische Speicherung von bestimmten Outlook Anhängen
01.04.2020 17:41:50
bestimmten
Hallo volti,
das hängt der Datei leider nur ein "aktuell" hinten an, und löscht nicht die KW Bezeichnung weg. Außerdem wird das Ganze nun nicht mehr als Excel Arbeitsmappe gespeichert...
AW: Automatische Speicherung von bestimmten Outlook Anhängen
01.04.2020 18:13:18
bestimmten
Hallo Nico,
sorry, da fehlte die Behandlung des Suffix (.xls?). Hatte ich vergessen, weil sie in Deiner Vorgabe auch nicht vorkam...
Probier mal, ob's jetzt besser ist.

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)
     P = InStrRev(mAtt.DisplayName, ".")
     If P > 0 Then
        sFile = Left$(mAtt.DisplayName, P - 6) & "aktuell" & Mid$(mAtt.DisplayName, P)
     End If
     mAtt.SaveAsFile "C:\meinSpeicherort\" & sFile
     mAtts.Remove 1
 Wend
End Sub
viele Grüße
Karl-Heinz

Anzeige
AW: Automatische Speicherung von bestimmten Outlook Anhängen
01.04.2020 18:48:30
bestimmten
Hallo Karl-Heinz,
wow das klappt super, vielen Dank dafür!!!!
Dazu noch eine weiterführende Frage: hast du auch eine Lösung für eingehende Mails, mit mehreren verschiedenen Anhängen, die ich nicht alle brauche?
Also nach dem Motto:
Anhang 1 "DQuote_wochenreport ST 2020 KW 08"
soll an C:\meinSpeicherort\Ordner A\ gespeichert werden
neuer Name: "DQuote_wochenreport ST 2020 aktuell"
Anhang 2 "Auswertungxyz_wochenreport ST 2020 KW 08"
brauche ich nicht, soll nicht gespeichert werden
Anhang 3 "LaufzeitZU_wochenreport ST 2020 KW 08"
soll an C:\meinSpeicherort\Ordner B\ gespeichert werden
neuer Name: "LaufzeitZU_wochenreport ST 2020 KW 08"
Vielen Dank und einen schönen Abend!
Nico
Anzeige
AW: Automatische Speicherung von bestimmten Outlook Anhängen
01.04.2020 23:37:18
bestimmten
Hallo Nico,
schau mal, ob das hier funktioniert...

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 "DQuote*" Then
      P = InStrRev(sFile, ".")
      If P > 0 Then
         sFile = Left$(sFile, P - 6) & "aktuell" & Mid$(sFile, P)
      End If
      mAtt.SaveAsFile "C:\meinSpeicherort\Ordner A\" & sFile
   ElseIf sFile Like "Laufzeit*" Then
      mAtt.SaveAsFile "C:\meinSpeicherort\Ordner B\" & sFile
   ElseIf sFile Like "Auswertung*" Then
   End If
   mAtts.Remove 1
 Wend
End Sub
viele Grüße
Karl-Heinz

Anzeige
AW: Crosspost...
01.04.2020 17:35:02
Nico
ich weiß, allerdings konnte mir dort leider keiner helfen...
AW: Crosspost...
02.04.2020 08:53:44
Torsten
Ja aber keiner hier weiss das. Du solltest immer in allen Foren angeben, wo du noch gepostet hast. Vielleicht bekommst du eine Loesung woanders und andere arbeiten hier umsonst.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige