This blog post shows you how to identify if a folder within your Outlook OST file has become out of sync with your Exchange server for Outlook clients which are running under cached Exchange mode. To do this we will look at the item count both of the cached outlook client and the Exchange server.
To get the item count of a folder in Outlook, this can be done in two ways. The first method is by using a VBS script such as the one from David Lee's blog:
http://techniclee.wordpress.com/2012/02/29/exporting-outlook-message-counts-to-excel/
A copy of this script can be found below.
This script will output the results to an Excel spreadsheet as shown in the following screenshot:
The second method is by selecting all items within the Outlook folder by pressing "CTRL + A" then pressing "ENTER". Make sure you select NO!
Now to check the number of items in my Sent Items on the Exchange server. This is done with the following PowerShell command:
Get-MailboxFolderStatistics -Identity "clint" -FolderScope "SentItems"
This shows the number of items on my Exchange server matches my Outlook client meaning my Outlook Cached Copy is indeed in sync!
To get the item count of a folder in Outlook, this can be done in two ways. The first method is by using a VBS script such as the one from David Lee's blog:
http://techniclee.wordpress.com/2012/02/29/exporting-outlook-message-counts-to-excel/
A copy of this script can be found below.
'Declare some variables
Dim olkApp, olkSes
'Connect to Outlook
Set olkApp = CreateObject("Outlook.Application")
Set olkSes = olkApp.GetNamespace("MAPI")
olkSes.Logon olkApp.DefaultProfileName
'Call the export process once for each folder count to be exported
'Format is ExportMessageCountToExcel <Path to Outlook Folder>, <Path and filename of the Excel file to export to>, <Number of the sheet the count goes on>
'The following lines are examples. Edit them as needed. Add additional lines as desired.
ExportMessageCountToExcel "Mailbox - Doe, John\Inbox", "C:\Message_Counts.xlsx", 1
ExportMessageCountToExcel "Personal Folders\Projects", "C:\Message_Counts.xlsx", 2
'Disconnect from Outlook
olkSes.Logoff
Set olkSes = Nothing
Set olkApp = Nothing
WScript.Quit
Sub ExportMessageCountToExcel(strFolder, strWorkbook, intSheet)
Const EXCEL_COL = 1
Dim olkFld, excApp, excWkb, excWks, lngRow
Set olkFld = OpenOutlookFolder(strFolder)
Set excApp = CreateObject("Excel.Application")
Set excWkb = excApp.Workbooks.Open(strWorkbook)
Set excWks = excWkb.Worksheets(intSheet)
lngRow = excWks.UsedRange.Rows.Count
If lngRow = 1 Then
If excWks.Cells(lngRow,1) <> "" Then
lngRow = lngRow + 1
End If
Else
lngRow = lngRow + 1
End If
excWks.Cells(lngRow, EXCEL_COL) = olkFld.Items.Count
Set excWks = Nothing
excWkb.Close True
Set excWkb = Nothing
excApp.Quit
Set excApp = Nothing
Set olkFld = Nothing
End Sub
Function OpenOutlookFolder(strFolderPath)
Dim arrFolders, varFolder, bolBeyondRoot
On Error Resume Next
If strFolderPath = "" Then
Set OpenOutlookFolder = Nothing
Else
Do While Left(strFolderPath, 1) = "\"
strFolderPath = Right(strFolderPath, Len(strFolderPath) - 1)
Loop
arrFolders = Split(strFolderPath, "\")
For Each varFolder In arrFolders
Select Case bolBeyondRoot
Case False
Set OpenOutlookFolder = olkApp.Session.Folders(varFolder)
bolBeyondRoot = True
Case True
Set OpenOutlookFolder = OpenOutlookFolder.Folders(varFolder)
End Select
If Err.Number <> 0 Then
Set OpenOutlookFolder = Nothing
Exit For
End If
Next
End If
On Error GoTo 0
End Function
This script will output the results to an Excel spreadsheet as shown in the following screenshot:
The second method is by selecting all items within the Outlook folder by pressing "CTRL + A" then pressing "ENTER". Make sure you select NO!
Now to check the number of items in my Sent Items on the Exchange server. This is done with the following PowerShell command:
Get-MailboxFolderStatistics -Identity "clint" -FolderScope "SentItems"
This shows the number of items on my Exchange server matches my Outlook client meaning my Outlook Cached Copy is indeed in sync!
You have to identify the number of items in the flder. Useful post
ReplyDeleteYes, good post and it's simple.
ReplyDeleteHI,
ReplyDeleteThanks for sharing informative post, It was very easy identify through script. David Lee's also explain briefly Exporting Outlook Message to Excel
things have become easy and super fast. All at your fingertips
ReplyDeleteHey Clint, Thanks a lot for such informative post. I visited David’s blog post as well that blog post is also informative an effective blog post.
ReplyDelete