Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1852to1856
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

File umbennennen in diesem kontext

File umbennennen in diesem kontext
08.11.2021 15:37:29
Andreas
Hallo ihr fleissigen Helfer(innen),
ich habe eine kleine Frage. Mit nachfolgendem Code kann ich einen Anhang aus einer Mail fischen, klappt auch super soweit.
Frage 1:
Wie bekomme ich es hin, dass ich das File nach Gefunden-Werden auch direkt mit neuem Namen abspeichere: zb. als Scan.pdf
Frage2:
Wie bekomme ich es hin, dass er mehrere Anhänge aus der Mail fischt und diese dann als Scan1.pdf und Scan2. pdf abspeichert. Oder besser gleich auch die Endungen beachtetn, sollten es mal bilder sein...
Frage3:
Kann man irgendwo auch anstelle des Betreffs auch den Absender als Kriterium angeben?
Vielen Dank und lieben Gruß

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: File umbennennen in diesem kontext
08.11.2021 16:35:38
Andreas
Man sollte natürlich auch den Code einfügen:

Private Sub CommandButton9_Click()
Dim olApp As Object, objFolder As Object, objItem As Object
Set olApp = CreateObject("outlook.application")
Set objFolder = olApp.GetNameSpace("MAPI").GetDefaultFolder(6)
For Each objItem In objFolder.Items
If objItem.Subject Like "*" & "MyQ: gescanntes Dokument" & "*" Then
If objItem.Attachments.Count > 0 Then
With objItem.Attachments.Item(1)
If .Filename Like "*.pdf" Then
.SaveAsFile sPfadAkte & .Filename
End If
End With
End If
End If
Next
Set objFolder = Nothing
Set olApp = Nothing
End Sub

Anzeige
AW: File umbennennen in diesem kontext
09.11.2021 18:42:07
Yal
Hallo Andreas,
probiere folgendes. Wenn Attachments.Count = 0 geht die For-Schleife gar nicht an, daher kein If notwendig.

Private Sub CommandButton9_Click()
Dim olApp As Object, objFolder As Object, objItem As Object
Dim i, j
Set olApp = CreateObject("outlook.application")
Set objFolder = olApp.GetNameSpace("MAPI").GetDefaultFolder(6)
j = 1
For Each objItem In objFolder.Items
If objItem.Subject Like "*" & "MyQ: gescanntes Dokument" & "*" Then
For i = 1 To objItem.Attachments.Count
With objItem.Attachments.Item(i)
If .Filename Like "*.pdf" Then .SaveAsFile sPfadAkte & "Scan_" & j & ".pdf"
End With
Next
j = j + i
End If
Next
Set objFolder = Nothing
Set olApp = Nothing
End Sub
Wenn Du nicht mit Late Binding sondern Early Binding verwendest ("Extras", "Verweise...", Hacken bei "Microsoft Outlook 16.0 Object Library"), dann kannst Du deine Variablen als

Dim olApp As Outlook.Application
Dim objFolder As Outlook.Folder
Dim objItem As Outlook.MailItem
deklarieren. Dann kommt nach dem Eintippen von "objItem." eine Liste der verfügbare Eigenschaften/Mehode der Klasse MailItem. Wenn nicht dann Strg+ Leertaste. So findest Du schneller objitem.SenderName
VG
Yal
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige