Script to Dump Exchange Mailbox Info to Spreadsheet (CSV)

I found another useful script I wrote last year on my hard drive this evening. It's attached at the bottom of this post. This script will dump quite a bit of useful information about each mailbox on a particular server or set of servers to a CSV file which you can in turn import into Excel and create a spreadsheet from. I typically would import data into a SQL Server table using DTS (Data Transformation Services) if I needed to do alot of computation or data mining. Excel gets very slow when doing tasks that really require an index over a lot of data.

The script uses WMI to get this information so Exchange 2003 is required. I believe only Exchange View Only level permissions are required on the servers, but I don't have something handy to test and I was running as an Exchange Full Admin when I wrote this.

There are a few properties which I did not export as I did not need them at the time. The specific meaning of each property available is available on MSDN. Adding these properties to the script should be self explanatory (especially given a very similar script at the bottom of the MSDN article).

There are two things you must edit in order for this script to function within your organization:

Line 24:
"Const TOTALSERVERS = 3"

You should put the total number of servers you plan to inventory here.

Lines 29 – 31:
strComputer(0) = "xmb01"
strComputer(1) = "xmb02"
strComputer(2) = "xmb03"

You should create or remove additional lines for each server name. Note that the array starts with index 0. The script has been tested with twelve servers and sixty thousand mailboxes.

The zip linked below contains the script. Use this at your own risk, it's not my fault if anything happens.

Share this post: email it! | digg it! | bookmark it! | live it!

Leave a Reply

Your email address will not be published. Required fields are marked *