?
Solved

Export Exchange Public Folder Data to CSV

Posted on 2008-10-01
5
Medium Priority
?
682 Views
Last Modified: 2013-11-25
My client has created several custom forms through outllook on their exchange database (exchange 2000 public folders). They have added extra detail fields. I need to get all this information out of exchange and into a CSV, XML or any other transferrable format to import into an application we are developing for them.

Does anyone know of a simple way to do do this?
0
Comment
Question by:mansol2
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
5 Comments
 
LVL 76

Expert Comment

by:David Lee
ID: 22629896
Hi, mansol2.

Assuming that the data from the additional fields is being stored in user-properties, then I can do this with a simple bit of scripting.  Do you want just the custom fields or are there stock fields you want too?


0
 

Author Comment

by:mansol2
ID: 22631620
Bluedevilfan

I am looking for the stock fields too. Could you give me a couple of pointers or some sample script and I will try to do it myself.

Thanks

0
 
LVL 76

Accepted Solution

by:
David Lee earned 2000 total points
ID: 22634852
Here's an export routine I wrote for another question.  This one exports appointments.  I've added comments to help you understand how it works.  Stock fields are referred to by their property name.  For example, an appointment item's starting time is in a property called Start.  Built-in properties are all documented in online help for the particular object type (i.e. message, task, appointment, etc.).  User-properties are stored in a collection called UserProperties.  Use code like this to get the value of a userproperty:

    varValue = Item.UserProperties.Item("MyUserPropertyName").Value

Where
varValue is a variable to hold the returned value
Item is any Outlook object (e.g. message, task, appointment, etc.)
MyUserPropertyName is the name of the property to be retrieved


Sub ExportAppointments()
    Const S1 = """"
    Const S2 = ""","""
    Dim olkItems As Outlook.Items, _
        olkAppt As Outlook.AppointmentItem, _
        objFSO As Object, _
        objFile As Object, _
        varBuffer As Variant
    'Open the folder that's currently selected in Outlook.  This makes the routine more flexible than opening a specific folder.'
    Set olkItems = Application.ActiveExplorer.CurrentFolder.Items
    'Loop to process each item in the folder.'
    For Each olkAppt In olkItems
        'Test to make sure that the item is of the desired type.'
        If olkAppt.Class = olAppointment Then
            With olkAppt
                'Build a CSV row for the current record.  The appointment fields are all stock fields.'
                varBuffer = varBuffer & S1 & .Subject & S2 & .Body & S2 & .Start & S2 & .End _
                    & S2 & .AllDayEvent & S1 & vbCrLf
            End With
        End If
    Next
    'Create a file and write the CSV data to it.'
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objFile = objFSO.CreateTextFile("C:\eeTesting\Calendar - " & olkItems.Parent.Parent.Name & ".csv")
    objFile.WriteLine varBuffer
    'Clean-up'
    objFile.Close
    Set objFile = Nothing
    Set objFSO = Nothing
    Set olkAppt = Nothing
    Set olkItems = Nothing
    MsgBox "All done!", vbInformation + vbOKOnly, "Export Appointments"
End Sub

Open in new window

0
 

Author Closing Comment

by:mansol2
ID: 31502274
Nice and clear - took me right back to my cBasic days - when 64K was enough memory to run an accounts program !!!
Thanks
0
 
LVL 76

Expert Comment

by:David Lee
ID: 22644073
You're welcome.  Glad I could help out.
0

Featured Post

Office 365 Training for Admins - 7 Day Trial

Learn how to provision tenants, synchronize on-premise Active Directory, implement Single Sign-On, customize Office deployment, and protect your organization with eDiscovery and DLP policies.  Only from Platform Scholar.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes how to import an Outlook PST file to Office 365 using a third party product to avoid Microsoft's Azure command line tool, saving you time.
This article will help to fix the below errors for MS Exchange Server 2013 I. Certificate error "name on the security certificate is invalid or does not match the name of the site" II. Out of Office not working III. Make Internal URLs and Externa…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Many of my clients call in with monstrous Gmail overloading issues with Outlook. A quick tip is to turn off the All Mail and Important folders from synching. Here is a quick video I made to show you how to turn off these and other folders in Gmail s…
Suggested Courses
Course of the Month10 days, 23 hours left to enroll

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question