Thema Datum  Von Nutzer Rating
Antwort
01.12.2018 14:56:02 ElTobi
NotSolved
01.12.2018 15:48:13 ugor
NotSolved
01.12.2018 17:25:37 ElTobi
NotSolved
02.12.2018 12:51:14 Gast55625
NotSolved
02.12.2018 15:28:12 ugor
NotSolved
02.12.2018 23:09:09 ElTobi
NotSolved
02.12.2018 23:10:48 Gast86858
Solved
Blau E-Mails in Excel für bestimmten Zeitraum auslesen
03.12.2018 01:27:08 ugor
NotSolved
03.12.2018 09:26:34 ElTobi
NotSolved
07.12.2018 09:24:26 ElTobi
NotSolved
07.12.2018 14:21:47 ugor
NotSolved
07.12.2018 15:35:31 ElTobi
Solved
03.12.2018 07:46:43 Gast2330
NotSolved

Ansicht des Beitrags:
Von:
ugor
Datum:
03.12.2018 01:27:08
Views:
832
Rating: Antwort:
  Ja
Thema:
E-Mails in Excel für bestimmten Zeitraum auslesen

Hallo,

du verwechselst die Ausdrücke [b]If[/b] und [b]Width[/b]:
https://de.wikibooks.org/wiki/VBA_in_Excel/_Wenn-Abfragen

 

Achtung, du bringst olUFolder, olUFolder2 und  olUFolder3 durcheinander.

 

Wenn man sich nur die Schleifen anschaut, ergibt das auch nicht so richtig Sinn (das sind zu viele).

For olItemsCount = 1 To olUFolder.Items.Count           'Schleife über die Mails in olUfolder        

    For a = olUFolder.Items.Count To 1 Step -1          'Schleife über die Mails in olUfolder
           
        For aa = msg.Attachments.Count To 1 Step -1     'Schleife über alle Anhänge einer Mail
              
        Next
            
    Next
         
Next olItemsCount
     

 

 

Du bist ja im Prinzip nah dran, aber immer nur aus dem Forum kopieren bringt dir nichts. Mein Vorschlag, beginne nochmal so:

Option Explicit
 
 
Public Sub PDFDOWN()
 
Dim olapp        As Object
Dim olName       As Object
Dim olHFolder    As Object
Dim olUFolder    As Object
Dim olUFolder2    As Object
 
 
Dim sSavePath    As String
Dim sSaveFolder  As String
Dim msg          As Object
Dim VonDatum As Date, BisDatum As Date
Dim olItemIndex As Long
dim aa as long
 
sSaveFolder = "C:\Users\Desktop\DOWNLOAD Outlook\"
 
Set olapp = CreateObject("Outlook.Application")
Set olName = olapp.GetNamespace("MAPI")
Set olHFolder = olName.Session.Folders("Funktionspostfach")
Set olUFolder = olHFolder.Folders("Posteingang")
Set olUFolder2 = olHFolder.Folders("1.01 in Bearbeitung")
 
 
VonDatum = CDate(InputBox("Bitte Datum des ersten zu betrachtenden Tages eingeben:", "Datumseingabe", Format(Now - 1, "DD.MM.YYYY")))
BisDatum = CDate(InputBox("Bitte Datum des letzten zu betrachtenden Tages eingeben:", "Datumseingabe", Format(Now, "DD.MM.YYYY")))
  
VonDatum = DateSerial(Year(VonDatum), Month(VonDatum), Day(VonDatum))
BisDatum = DateSerial(Year(BisDatum), Month(BisDatum), Day(BisDatum) + 1)


For olItemIndex = 1 To olUFolder.Items.Count        'Schleife über die Mails in olUfolder (= Posteingang)
    
    set msg = ...                                   'E-Mail       
          
    For aa = msg.Attachments.Count To 1 Step -1     'Schleife über alle Anhänge einer Mail
        
        sSavePath = ...

        debug.print sSavePath
          
    Next
            
Next
 
End Sub

Der Code schreibt den Inhalt der Variablen sSavePath in das Direktfenster (im VisualBasicEditor: Alt => Ansicht => Direktfenster oder STRG+G).

Erarbeite dir zunächst den Code nur für den Posteingangsordner.

Als erstes ersetzt du die Punkte durch Code. Sobald dein Code das erste Mal lauffähig ist, probierst du ihn aus und kontrollierst im Direktfenster, ob er das erwartete Ergebnis ausgeibt (das ist noch nicht das Endergebnis).
Stimmt die Ausgabe im Direktfenster nicht mit deiner Erwartung überein, überlegst du, ob du am Code etwas ändern musst, oder ob vielleicht deine Erwartungshalung falsch ist.
Erst wenn die Ausgabe des Codes identisch mit dem ist, was du erwartest, erweiterst du den Code so, dass er deinem Ziel näher kommt (zB. If-Bedingung einbauen).
Denke dir einen besseren Namen für die Variable aa aus und benutze ihn.

Für die If-Bedingung wirst du das Datum der E-Mail benötigen: "[b]msg.ReceivedTime[/b]"

Erst wenn die Ausgabe im Direktfenster richtig ist, speicherst du Anhängge wirklich als Dateien.

Klappt alles für den Posteingang, erst dann programmierst du den "1.01 in Bearbeitung"-Ordner.

 

Kommst du irgendwo nicht weiter oder verstehst du einen Befehl nicht, kannst du natürlich nachfragen!


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
01.12.2018 14:56:02 ElTobi
NotSolved
01.12.2018 15:48:13 ugor
NotSolved
01.12.2018 17:25:37 ElTobi
NotSolved
02.12.2018 12:51:14 Gast55625
NotSolved
02.12.2018 15:28:12 ugor
NotSolved
02.12.2018 23:09:09 ElTobi
NotSolved
02.12.2018 23:10:48 Gast86858
Solved
Blau E-Mails in Excel für bestimmten Zeitraum auslesen
03.12.2018 01:27:08 ugor
NotSolved
03.12.2018 09:26:34 ElTobi
NotSolved
07.12.2018 09:24:26 ElTobi
NotSolved
07.12.2018 14:21:47 ugor
NotSolved
07.12.2018 15:35:31 ElTobi
Solved
03.12.2018 07:46:43 Gast2330
NotSolved