![]() |
get outlook mailbox size from vba
Hello,
I am looking for some VBA code to get the Outlook Mailbox size on the exchange server from Access. I found this url http://support.microsoft.com/kb/320071 but not support by VBA. I am sending email from Access using the Outlook SendObject and before sending I want to check the Mailbox size to ensure the Mailbox size is under the size quota. Appreciate any help. bobm |
get outlook mailbox size from vba
Sub GetFolderSize()
Dim lFolderSize As Long Dim objSubFolder As MAPIFolder Set objApp = CreateObject("Outlook.Application") Set objNS = objApp.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set objOutlookToday = objInbox.Parent For Each objSubFolder In objOutlookToday.Folders lFolderSize = lFolderSize + GetSubFolderSize(objSubFolder) Next MsgBox "Total Size = " & lFolderSize End Sub Function GetSubFolderSize(objFolder As MAPIFolder) As Long Dim lFolderSize As Long Dim objSubFolder As MAPIFolder For Each objItem In objFolder.Items lFolderSize = lFolderSize + objItem.Size Next ' process all the subfolders of this folder For Each objSubFolder In objFolder.Folders 'Do something with objFolder lFolderSize = lFolderSize + GetSubFolderSize(objSubFolder) Next GetSubFolderSize = lFolderSize Set objFolder = Nothing Set objItem = Nothing End Function |
get outlook mailbox size from vba
Sub GetFolderSize()
Dim lFolderSize As Long Dim objSubFolder As MAPIFolder Set objApp = CreateObject("Outlook.Application") Set objNS = objApp.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set objOutlookToday = objInbox.Parent For Each objSubFolder In objOutlookToday.Folders lFolderSize = lFolderSize + GetSubFolderSize(objSubFolder) Next MsgBox "Total Size = " & lFolderSize End Sub Function GetSubFolderSize(objFolder As MAPIFolder) As Long Dim lFolderSize As Long Dim objSubFolder As MAPIFolder For Each objItem In objFolder.Items lFolderSize = lFolderSize + objItem.Size Next ' process all the subfolders of this folder For Each objSubFolder In objFolder.Folders 'Do something with objFolder lFolderSize = lFolderSize + GetSubFolderSize(objSubFolder) Next GetSubFolderSize = lFolderSize Set objFolder = Nothing Set objItem = Nothing End Function |
get outlook mailbox size from vba
Good info. I was hoping that there was a direct property to pull the mailbox
size from instead of traversing all the folders and items under the mailbox object, but I guess not. I am not allowed to install any third party add-ins on the client PCs, so I guess this is the only way? In using this, I have found a problem. Encrypted emails. The size property will not pull when it encounters an encrypted email. I error out with a -2147217660 - Method 'Size' of object 'MailItem' failed. Any suggestions on either of these questions? Is there a more direct way of pulling a size from the mailbox or even the individual folders (inbox, sent, etc) without traversing through each item and without installing any other add-ins? If not - any way around the encrypted problem.... ?? Thanks, Jason "bobm" wrote: Sub GetFolderSize() Dim lFolderSize As Long Dim objSubFolder As MAPIFolder Set objApp = CreateObject("Outlook.Application") Set objNS = objApp.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set objOutlookToday = objInbox.Parent For Each objSubFolder In objOutlookToday.Folders lFolderSize = lFolderSize + GetSubFolderSize(objSubFolder) Next MsgBox "Total Size = " & lFolderSize End Sub Function GetSubFolderSize(objFolder As MAPIFolder) As Long Dim lFolderSize As Long Dim objSubFolder As MAPIFolder For Each objItem In objFolder.Items lFolderSize = lFolderSize + objItem.Size Next ' process all the subfolders of this folder For Each objSubFolder In objFolder.Folders 'Do something with objFolder lFolderSize = lFolderSize + GetSubFolderSize(objSubFolder) Next GetSubFolderSize = lFolderSize Set objFolder = Nothing Set objItem = Nothing End Function |
All times are GMT +1. The time now is 03:35 PM. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 2.4.0
Copyright ©2004-2006 OutlookBanter.com