Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Bestimmte Werte aus Outlook in Excel importieren
#1
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
Antworten Top
#2
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
Antworten Top
#3
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?
Antworten Top
#4
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
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#5
(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).
Antworten Top
#6
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
Antworten Top
#7
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
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste