Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Anhänge aus markierten E-Mails speichern

Anhänge aus markierten E-Mails speichern
19.03.2020 11:23:59
Dennis
Hallo zusammen,
ich benötige ein Makro, welches die Dateianhänge aus markierten E-Mails im Outlook auf einmal auf einen hinterlegten Pfad speichert. Ich habe leider keine Erfahrung im Bereich VB-Programmierung.. vielleicht kann hier jemand helfen?
Vielen Dank!
Anzeige

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Anhänge aus markierten E-Mails speichern
19.03.2020 11:30:52
mumpel
Hallo!
Für Excel-VBA oder für Outlook-VBA?
Gruß, René
AW: Anhänge aus markierten E-Mails speichern
19.03.2020 11:46:05
Dennis
Outlook-VBA, sorry mein Fehler. Ich dachte hier im Forum könnte man auch Outlook-Geschichten fragen.
Beitrag kann somit gelöscht werden, mein Fehler!
AW: Anhänge aus markierten E-Mails speichern
19.03.2020 11:54:49
mumpel
Kannst Du auch hier fragen.
Das Problem ist, dass auch Bilder im Email-Text (Body) als Anhang gelten. Welche Dateiformate sollen berücksichtigt werden? Ich erstelle Dir dann schnell einen Beispielcode.
Anzeige
AW: Anhänge aus markierten E-Mails speichern
19.03.2020 12:39:22
Dennis
Oh sehr gut! Also es handelt sich um einen verschlüsselten Dateianhang. Dateiendung: .pgp
Also es soll so ablaufen: Ich markiere 5 E-Mails mit diesen Anhängen und führe dann das Makro aus. Dieses speichert die Dateien dann alle in ein Verzeichnis X ab.
Danke dir für deine schnelle Hilfe! :-)
Anzeige
AW: Anhänge aus markierten E-Mails speichern
19.03.2020 13:12:29
mumpel
Markieren musst Du die Anhänge nicht.
Ungetestet:
Sub SavePGPOnHarddrive()

    Dim myAttachments     As Outlook.Attachments
    Dim olMailItem        As Outlook.MailItem
    
    Dim lngAttachCount    As Long
    
    Dim strAttach         As String
    Dim strPath           As String
    
    ' Pfad angeben 
    strPath = Environ("USERPROFILE") & "\Desktop\PGPFiles\"
    
    ' Aktive Mail setzen 
    Select Case True
           Case TypeOf Application.ActiveWindow Is Outlook.Inspector
                Set olMailItem = Application.ActiveInspector.CurrentItem
           Case Else
                With Application.ActiveExplorer.Selection
                     If .Count Then Set olMailItem = .Item(1)
                End With
                If olMailItem Is Nothing Then Exit Sub
           End Select
      
       ' Anhangobjekt erstellen 
        Set myAttachments = olMailItem.Attachments
        
        ' Anhänge prüfen und speichern. Nur Dateien vom Typ PGP wird gespeichert 
        If myAttachments.Count > 0 Then
           For lngAttachCount = myAttachments.Count To 1 Step -1
               If Right(myAttachments(lngAttachCount).DisplayName, 3) = "pgp" Then
                  .Attachments.Item(i).SaveAsFile strPath & _
                                                  .Attachments.Item(lngAttachCount).Filename
               End If
           Next lngAttachCount
End Sub


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:René Holtz

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


Anzeige
AW: Anhänge aus markierten E-Mails speichern
19.03.2020 14:39:15
Dennis
Leider gibts einen Fehler beim Ausführen (Unzulässiger oder nicht ausreichend definierter Verweis)
Userbild
AW: Anhänge aus markierten E-Mails speichern
19.03.2020 15:46:47
mumpel
Sub SavePGPOnHarddrive()

    Dim myAttachments     As Outlook.Attachments
    Dim olMailItem        As Outlook.MailItem
    
    Dim lngAttachCount    As Long
    
    Dim strAttach         As String
    Dim strPath           As String
    
    ' Pfad angeben 
    strPath = Environ("USERPROFILE") & "\Desktop\PGPFiles\"
    
    ' Aktive Mail setzen 
    Select Case True
           Case TypeOf Application.ActiveWindow Is Outlook.Inspector
                Set olMailItem = Application.ActiveInspector.CurrentItem
           Case Else
                With Application.ActiveExplorer.Selection
                     If .Count Then Set olMailItem = .Item(1)
                End With
                If olMailItem Is Nothing Then Exit Sub
           End Select
      
       ' Anhangobjekt erstellen 
        Set myAttachments = olMailItem.Attachments
        
        ' Anhänge prüfen und speichern. Nur Dateien vom Typ PGP wird gespeichert 
        If myAttachments.Count > 0 Then
           For lngAttachCount = myAttachments.Count To 1 Step -1
               If Right(myAttachments(lngAttachCount).DisplayName, 3) = "pgp" Then
                  olMailItem.Attachments.Item(i).SaveAsFile strPath & _
                  olMailItem.Attachments.Item(lngAttachCount).Filename
               End If
           Next lngAttachCount
       End If
End Sub

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:René Holtz

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


Anzeige
AW: Anhänge aus markierten E-Mails speichern
20.03.2020 12:38:10
Dennis
Klappt leider immer noch nicht. Irgendwo hakt es noch.
Userbild
Gruß Dennis
AW: Anhänge aus markierten E-Mails speichern
20.03.2020 12:43:42
Dennis
klicke ich auf "Debuggen" markiert er den von dir angepassten Code:
Userbild
Anzeige
AW: Anhänge aus markierten E-Mails speichern
20.03.2020 14:05:59
peterk
Hallo
Ersetze Item(i) durch Item(lngAttachCount)
AW: Anhänge aus markierten E-Mails speichern
20.03.2020 15:40:11
mumpel
Zuviel Copy&Paste. Da übersieht man leicht was. 😉
AW: Anhänge aus markierten E-Mails speichern
20.03.2020 18:04:08
Dennis
Jetzt funktioniert's! Super! Vielen Dank! Was müsste man denn ändern, wenn den Anhang mehrerer E-Mails auf einmal speichern möchte? Also wie schon beschrieben, den Anhang der markierten E-Mails.
Anzeige
AW: Anhänge aus markierten E-Mails speichern
20.03.2020 18:58:54
mumpel
Das schau ich mir morgen mal an. Dazu aber eine Frage. Haben die Anhänge immer den selben Namen, oder sind die Namen immer unterschiedlich?
AW: Anhänge aus markierten E-Mails speichern
20.03.2020 19:29:36
Dennis
Das ist nett von Dir! Der Name der Datei ist immer ein anderer. Es ist aber immer das enstprechende Format.
Danke!
Gruß Dennis
AW: Anhänge aus markierten E-Mails speichern
20.03.2020 19:36:48
Dennis
Das ist nett von Dir! Der Name der Datei ist immer ein anderer. Es ist aber immer das enstprechende Format.
Danke!
Gruß Dennis
Anzeige
AW: Anhänge aus markierten E-Mails speichern
19.03.2020 11:56:26
mumpel
BTW:
Gefragt habe ich da es zwischen Excel-VBA und Ourlook-VBA Unterschiede in der Programmierung gibt.
AW: Anhänge aus markierten E-Mails speichern
19.03.2020 12:43:45
Dennis
Ah okay, das wusste ich auch noch nicht. Also es geht um Outlook 2010
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige