Clever-Excel-Forum

Normale Version: Bestimmte Werte aus Outlook in Excel importieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

folgende zu lösende Aufgabe:

Ich bekomme jeden Tag von einem bestimmten Absender Emails mit verschiedenen Bestellungen.
Diese Emails werden automatisch in einen Ordner verschoben.

Jede Email besteht aus einem (im Betreff)
- Auftragscode (DE123456X01)
- Produktname
(Produkt 1)
- Produkt Typ
(Typ 1)
- Anzahl
(5 Stk.)

Jetzt würde ich gerne per Button, die für mich relevanten Werte aller ungelesenen Emails, aus diesem Ordner in meine Exceldatei importieren.

Meine Exceldatei ist so aufgebaut:

A1 Datum
B1 Auftrag
C1 Produkt
D1 Typ
E1 Zusatz
F1 Stk.

Button (importieren)

Die Werte sollen von A2:F... eingetragen werden und werden anschließend mit anderen Makros weiterverarbeitet.

Sobald die Emails importiert wurden, sollen diese Emails einer bestimmten Kategorie zugeordnet und als gelesen markiert werden.

Vielen Dank für eure Hilfe! :)

Ich benutze Excel Professional Plus 2016
Code:
Sub M_snb()
  With CreateObject("Outlook.Application").GetNamespace("MAPI").GetDefaultFolder(6)
    for each it in .Items
      msgbox it.subject
    next
  End With
End Sub
Danke für die Info,
leider erscheint jetzt nur für jede Email eine Meldung.
Wie kann ich den Code umändern das anstatt eine Meldung er mir die Werte in die jeweiligen Zellen schreibt?
Hallöchen,

da wäre mal ein Original-Betreff interessant und eine Aussage, ob die Daten anders als durch Leerzeichen voneinander getrennt sind.
Den ganzen betreff bekommst Du im Prinzip in der Schleife so in eine Zelle:

iCnt=iCnr+1
cells(iCnt, 1) = it.subject
(05.06.2016, 16:15)BadHabiit schrieb: [ -> ]Danke für die Info,
leider erscheint jetzt nur für jede Email eine Meldung.
Wie kann ich den Code umändern das anstatt eine Meldung er mir die Werte in die jeweiligen Zellen schreibt?

Ich fürchte das deine VBA Kenntnis nich deinem Ehrgeiz übereinstimmt. (als 'understatement' gemeint).
Hallo,

hier noch etwas modifiziert, um auch den "body-"Text auszulesen.

Es dürfte noch fehlen den Folder zu wechseln.


Code:
Sub Outlook_to_Xl()
 With CreateObject("Outlook.Application").GetNamespace("MAPI").GetDefaultFolder(6)
 Anz = .items.count
for i = 1 to Anz
      debug.print .items.item(i).subject, .items.item(i).body
next i
End With
End Sub
Hallo,

um den Folder mit den gesuchten e-mails zu öffnen, versuche:

Wenn der Folder-Name "ABCD" ist, dann


Code:
With GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Folders.Item("ABCD")


mfg