+ Reply to Thread
Results 1 to 2 of 2

Thread: Export emails from Outlook to Excel

  1. #1
    Registered User
    Join Date
    11-23-2011
    Location
    Idaho
    MS-Off Ver
    Excel 2007
    Posts
    1

    Export emails from Outlook to Excel

    I want to move my emails into an Excel file. I have found this code and it works, but there are a few things I would like to change but don't know how.

    Right now the code needs a manual selection of which folder to export from and I would like to automate this. It also opens the file every time the code is run even if the file is already open, I would like it to select the file if it is already open instead of opening a second one. Then, I would like to put this into a script that will run on outlook every time a new message is received. Please help me with any of the problems if you can. Thanks.


    Sub ExportToExcel()
      On Error GoTo ErrHandler
      Dim appExcel As Excel.Application  Dim wkb As Excel.Workbook
    
    Dim wks As Excel.Worksheet
    
    Dim rng As Excel.Range
    
    Dim strSheet As String
    
    Dim strPath As String
    
    Dim intRowCounter As Integer
    
    Dim intColumnCounter As Integer
    
    Dim msg As Outlook.MailItem
    
    Dim nms As Outlook.NameSpace
    
    Dim fld As Outlook.MAPIFolder
    
    Dim itm As Object
        strSheet = "OutlookItems.xls"  strPath = "C:Examples\"
    
    strSheet = strPath & strSheet
    
    Debug.Print strSheet
      'Select export folder
    Set nms = Application.GetNamespace("MAPI")
    
    Set fld = nms.PickFolder
      'Handle potential errors with Select Folder dialog box.
    If fld Is Nothing Then
    
    MsgBox "There are no mail messages to export", vbOKOnly, _
    
    "Error"
    
    Exit Sub
    
    ElseIf fld.DefaultItemType <> olMailItem Then
    
    MsgBox "There are no mail messages to export", vbOKOnly, _
    
    "Error"
    
    Exit Sub
    
    ElseIf fld.Items.Count = 0 Then
    
    MsgBox "There are no mail messages to export", vbOKOnly, _
    
    "Error"
    
    Exit Sub
    
    End If
      'Open and activate Excel workbook.
    Set appExcel = CreateObject("Excel.Application")
    
    appExcel.Workbooks.Open (strSheet)
    
    Set wkb = appExcel.ActiveWorkbook
    
    Set wks = wkb.Sheets(1)
    
    wks.Activate
    
    appExcel.Application.Visible = True
      'Copy field items in mail folder.
    For Each itm In fld.Items
    
    intColumnCounter = 1
    
    Set msg = itm
    
    intRowCounter = intRowCounter + 1
    
    Set rng = wks.Cells(intRowCounter, intColumnCounter)
    
    rng.Value = msg.To
    
    intColumnCounter = intColumnCounter + 1
    
    Set rng = wks.Cells(intRowCounter, intColumnCounter)
    
    rng.Value = msg.SenderEmailAddress
    
    intColumnCounter = intColumnCounter + 1
    
    Set rng = wks.Cells(intRowCounter, intColumnCounter)
    
    rng.Value = msg.Subject
    
    intColumnCounter = intColumnCounter + 1
    
    Set rng = wks.Cells(intRowCounter, intColumnCounter)
    
    rng.Value = msg.SentOn
    
    intColumnCounter = intColumnCounter + 1
    
    Set rng = wks.Cells(intRowCounter, intColumnCounter)
    
    rng.Value = msg.ReceivedTime
    
    Next itm
      Set appExcel = Nothing  Set wkb = Nothing
    
    Set wks = Nothing
    
    Set rng = Nothing
    
    Set msg = Nothing
    
    Set nms = Nothing
    
    Set fld = Nothing
    
    Set itm = Nothing
      Exit Sub
    ErrHandler:  If Err.Number = 1004 Then
    
    MsgBox strSheet & " doesn't exist", vbOKOnly, _
    
    "Error"
    
    Else
    
    MsgBox Err.Number & "; Description: ", vbOKOnly, _
    
    "Error"
    
    End If
    
    Set appExcel = Nothing
    
    Set wkb = Nothing
    
    Set wks = Nothing
    
    Set rng = Nothing
    
    Set msg = Nothing
    
    Set nms = Nothing
    
    Set fld = Nothing
    
    Set itm = Nothing
    End Sub

  2. #2
    Registered User
    Join Date
    01-02-2012
    Location
    Please select
    MS-Off Ver
    Excel 2003
    Posts
    2

    Re: Export emails from Outlook to Excel

    you may do like this
    choose file > export > address book. Export as a csv file. this can then be opened it excel
    and if if you need some other way you can contact PST repair.

+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.2.0