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

Mail export Outlook Excel

Mail export Outlook Excel
14.01.2017 18:31:29
Lohkemper
Hallo zusammen,
ich bin der Neue und schreibe jetzt - vielleicht - öfters. :)
Ich habe hier im Forum schon viele nützliche Tipps und Hinweise gefunden.
Für ein Problem jedoch finde ich bisher keine Lösung.
Und zwar bekomme ich regelmäßig eine Mail mit Daten, diese Daten möchte ich gerne via Makro nach Excel exportieren.
Das klappt bisher soweit auch ganz gut, das einzige Problem ist, das der gesamte Mail Inhalt in Zelle A1 eingefügt wird.
Mein Wunsch wäre es das die Daten in die Zellen A1 - A32 eingefügt werden.
Die Mail gliedert sich so
"Informationen zu ...."
01.01.2017 Aktueller Dienst: XX
02.01.2017 Aktueller Dienst: YY
Jedes Datum soll also in eine Zelle.
Sollten noch weitere Fragen sein, einfach melden.

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mail export Outlook Excel
15.01.2017 08:29:57
fcs
Hallo Lohkemper,
für weitere Unterstützung musst du dein existierendes Makro posten, damit erkennbar ist wo im Makro angesetzt werden muss.
Wahrscheinlich musst der Text, den du aus der E-Mmail übernimmst, am Zeilenumbruch gesplittet werden so dass er in einzelne Zeilen in Excel eingefügt werden kann.
LG
Franz
AW: Mail export Outlook Excel
17.01.2017 10:04:26
Tobias
Hallo,
danke für deine Nachircht.
hier mein Makro:
Sub OutlookPosteingang()
'Variablendeklaration
Dim OLF As Outlook.MAPIFolder
Dim AnzEintraege As Integer, i As Integer, Email As Integer
'  Hier wird eine Tabelle hinzugefügt
ActiveSheet.Name = i
'Globale Fehlerbehandlung  -> Excel soll automatisch weitermachen, egal welcher Fehler
On Error Resume Next
' Überschriften im neuen Blatt  -> die erste Zeile von A1 - B1
[A1].Value = ""
'Erste Zeile soll Fett formatiert werden
Rows(1).Font.Bold = True
'Setzen der Variable als Outlook Application; Zugriff auf Outlook
Set OLF = GetObject("", "Outlook.Application") _
.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)
'Setzen der Variable -> es sollen alle Nachrichten im Ordner 'Posteingang (olFolderInbox) gezä _
hlt werden
AnzEintraege = OLF.Items.Count
'Setzen der Variablen auf '0'
i = 0: Email = 0
'Beginn Schleifendurchlauf (Schleife 1)  -> die Variable 'i' läuft solange, wie Anzahl der  _
EMails vorhanden sind
While i 

Anzeige
AW: Mail export Outlook Excel
17.01.2017 19:35:30
fcs
Hallo Tobias,
probiere es mal mit den folgenden Ergänzungen.
Der Body-Text wird an der Zeilenschaltung gesplittet (hier musst du ggf. das Trennzeichen apassen).
Dann werden die Zeilen nacheinander eigefügt, wobei die Zeilen mit Datum ggf. auf 2 oder 3 Spalten verteilt werden.
LG
Franz
Sub OutlookPosteingang()
'Variablendeklaration
Dim OLF As Outlook.MAPIFolder
Dim AnzEintraege As Integer, i As Integer, Email As Integer
Dim varBody, intBody As Integer
'  Hier wird eine Tabelle hinzugefügt
ActiveSheet.Name = i
'Globale Fehlerbehandlung  -> Excel soll automatisch weitermachen, egal welcher Fehler
On Error Resume Next
' Überschriften im neuen Blatt  -> die erste Zeile von A1 - B1
[A1].Value = ""
'Erste Zeile soll Fett formatiert werden
Rows(1).Font.Bold = True
'Setzen der Variable als Outlook Application; Zugriff auf Outlook
Set OLF = GetObject("", "Outlook.Application") _
.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)
'Setzen der Variable -> es sollen alle Nachrichten im Ordner 'Posteingang (olFolderInbox) _
gezählt werden
AnzEintraege = OLF.Items.Count
'Setzen der Variablen auf '0'
i = 0: Email = 0
'Beginn Schleifendurchlauf (Schleife 1)  -> die Variable 'i' läuft solange, wie Anzahl _
der EMails vorhanden sind
While i  0 Then
Cells(Email, 2).Value = Left(varBody, InStr(varBody(intBody), ":"))
Cells(Email, 3).Value = Trim(Mid(varBody, InStr(varBody(intBody), ":") + 1))
Else
Cells(Email, 2).Value = varBody(intBody)
End If
Else
Cells(Email, 1).Value = varBody(intBody)
End If
Next
'Ende der Schleife 2
End With
'Ende der Schleife 1
Wend
'Die Variable muss wieder auf Null gesetzt werden = nothing halt
Set OLF = Nothing
'Die Spalten sollen automatisch in der Breite angeglichen werden
Columns("A:F").AutoFit
'Die Zelle 'A2' soll selektiert werden
[A2].Select
'Die Exceldatei wird gespeichert
ActiveWorkbook.Saved = True
'Die Statuszeile wird wieder ausgeschaltet
Application.StatusBar = False
End Sub

Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige