• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Tekst in Mail importeren in Excel.

Status
Niet open voor verdere reacties.

joost888

Gebruiker
Lid geworden
30 sep 2011
Berichten
7
Heeft iemand ervaring met het importeren van mails in excel.

Ik zal het even toelichten.
Wij krijgen mails binnen van een ingevuld contactformulier op onze website.
Deze mails hebben altijd dezelfde opmaak.

Ik zou graag de ingevulde mails en dus gegevens, automatisch in een excel-bestand willen importeren.

ik weet dat je een mail kunt omzetten naar tekstbestand en deze tekst kan importeren in excel, maar kan dit niet automatisch?

Alvast bedankt voor jullie hulp.
 
Hier kunnen we al eens mee starten.

Code:
Sub email()
    NextRow = 1
    Application.ScreenUpdating = False
    With CreateObject("Outlook.Application").GetNamespace("MAPI")
        Set objFolder = .pickfolder
        If objFolder Is Nothing Then MsgBox "Actie geannuleerd": Exit Sub
        TotalItems = objFolder.Items.Count
        If TotalItems = 0 Then MsgBox "Outlook folder bevat geen emailberichten", vbOKOnly + vbCritical, "Fout - Lege Folder": GoTo HandleExit
        On Error Resume Next
        Application.DisplayAlerts = False
        Sheets("import").Delete
        Application.DisplayAlerts = True
        Sheets.Add after:=Sheets(Sheets.Count)
        ActiveSheet.Name = "import"
        For Aantal = 1 To TotalItems
            objFolder.Items(Aantal).SaveAs ThisWorkbook.Path & "\temp321.txt", 0
            Close
            Open ThisWorkbook.Path & "\temp321.txt" For Input As #1
            Do Until EOF(1)
                Line Input #1, strText
                If strText <> "" Then Sheets("import").Cells(NextRow, 1).Value = strText: NextRow = NextRow + 1
            Loop
            Close
            Kill ThisWorkbook.Path & "\temp321.txt"
            NextRow = NextRow + 1
        Next Aantal
    End With
HandleExit:
     On Error Resume Next
     Application.ScreenUpdating = True
     Set objFolder = Nothing
     Kill ThisWorkbook.Path & "\temp321.txt"
     Exit Sub
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan