Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1896to1900
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
Email Anhang import < 30min zurück
04.09.2022 09:18:44
Andy
Hallo alle zusammen,
ich habe ein kleines Problem hinsichtlich dem Import von Email-Anhängen aus Outlook in einen bestimmten Ordner.
Der Code sollte die Emails nach dem Betreff "Scan" (von einem Drucker eingescannt und per Email an meinen Postkorb übersandt) durchsuchen
und nur die Emails mi ihren Anhängen der letzten 30 Min berücksichtigen.
Der Code funktioniert prima, der Import wird auch bestens durchgeführt.
Allerdings: Wenn ich eine Email habe, die in den letzten 30min gekommen ist, importiert er zwar richtigerweise deren Anhang, berücksichtigt danach aber nicht
mehr die Zeitvorgabe Habe ich keine Email in den letzten 30 min bekommen, berücksichtigt er keine Emails, auch nicht die mit Scan vor Wochen.
1. Kann mir jemand sagen, was ich ändern müsste?
2. Kann man bei einem Import vl. die Benennung der Dateien fortlaufend nummerieren?
Nach dem Muster: Email1 mit zwei Anhängen zb. Scan1 Scan2, Email2 mit drei Anhängen dann Scan3, Scan4, Scan5 usw....
Vielen lieben Dank für Eure Hilfe. Hier der Code:

Private Sub CommandButton9_Click()
Dim olApp As Object, objFolder As Object, objItem As Object
Dim zeit As String
If MsgBox("Möchten Sie aus Ihrem persönlichen Email-Posteingang den Anhangsimport starten? Die Email = zeit Then
If objItem.Subject Like "*" & "Scan" & "*" Then
If objItem.attachments.Count > 0 Then
With objItem.attachments.Item(1)
If .Filename Like "*.pdf" Then
.SaveAsFile sPfadAktenscan & Format(Now(), "yyyy-mm-dd") & "_" & Format(Now(), "hh-mm-ss") & "_" & "Scan" & ".pdf"
Application.Wait (Now + TimeValue("00:00:02"))
End If
End With
Else
End If
objItem.Delete
Else
End If
End If
Next
Set objFolder = Nothing
Set olApp = Nothing
End If
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
nur 1 Idee
04.09.2022 09:34:09
Oberschlumpf
Hi Andy,
kann es sein, dass die Zeile...

zeit = DateAdd("n", -30, Now())
...oberhalb von FOR EACH... stehen muss?
Denn zeit wird ja x-mal in der For/Next-Schleife neu berechnet - dabei interessiert dich "zeit" doch eigtl nur beim Start des Makros, oder?
Ne andere Idee hab ich nicht.
Hilfts?
Ciao
Thorsten
AW: nur 1 Idee
04.09.2022 10:20:00
Luschi
Hallo Andy,
beachte den Hinweis von Thorsten aber der tatsächliche Fehler passiert hier:
If objItem.receivedtime() &gt= zeit Then - dieser Vergleich liefert immer 'True', auch wenn das Datum der EMail außerhalb der Karenzzeit liegt. Deshalb schreibe diese Vba-Zeile so:
If CDate(objItem.receivedtime()) &gt= zeit Then
So richtig verstehe ich das Problem auch nicht, denn VarType(objItem.receivedtime()) liefert den Datentyp 7, also vbDate, aber vielleicht ist das doch nur 1 Textwert, der von Excel-Vba wie ein Datumswert behandelt wird. Aber auch das Vba-Überwachungsfenster zeigt den Datentyp Variant/Date an, vieleicht ist aber genau das die Ungenauigkeit bei der If-Prüfung.
Auf alle Fälle hilft die von mir geänderte Codezeile bei Deinem Problem.
Gruß von Luschi
aus klein-Paris
Anzeige
Die Var. "Zeit" müsste auch v. Typ Date sein! owT
04.09.2022 11:54:38
Yal
AW: Die Var. "Zeit" müsste auch v. Typ Date sein! owT
04.09.2022 13:16:27
Andy
Hallo alle zusammen,
Die Antworten habe ich alle eingebaut und berücksichtigt - es scheint nun zu klappen!
Vielen Dank an alle

123 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige