Property "PR_MESSAGE_SIZE_EXTENDED" should do the trick:
Public Sub ShowQuotas()' Show Outlook Exhange user quotas
' ----------
' References:
' Accessing Exchange proerties: https://msdn.microsoft.com/EN-US/library/office/ff863046.aspx
' Outlook quotas: http://blogs.technet.com/b/outlooking/archive/2013/09/19/mailbox-quota-in-outlook-2010-general-information-and-troubleshooting-tips.aspx
' Properties for quotas: http://blogs.msdn.com/b/stephen_griffin/archive/2012/04/17/cached-mode-quotas.aspx
' Property format: https://msdn.microsoft.com/en-us/library/ee159391(v=exchg.80).aspx
' http://schemas.microsoft.com/mapi/proptag/0xQQQQRRRR
' QQQQ = id
' RRRR = type
Dim oStore As Store
Dim propertyAccessor As Outlook.propertyAccessor
For Each oStore In Outlook.Application.Session.Stores
' Set oStore = Outlook.Application.Session.Stores.item(1)
Debug.Print "Display name: " & oStore.DisplayName
Debug.Print "Type: " & oStore.ExchangeStoreType & " (";
If oStore.ExchangeStoreType = olAdditionalExchangeMailbox Then Debug.Print "olAdditionalExchangeMailbox)"
If oStore.ExchangeStoreType = olExchangeMailbox Then Debug.Print "olExchangeMailbox)"
If oStore.ExchangeStoreType = olExchangePublicFolder Then Debug.Print "olExchangePublicFolder)"
If oStore.ExchangeStoreType = olNotExchange Then Debug.Print "olNotExchange)"
If oStore.ExchangeStoreType = olPrimaryExchangeMailbox Then Debug.Print "olPrimaryExchangeMailbox)"
Debug.Print "Path: " & oStore.FilePath
Debug.Print "Cached (=online): " & oStore.IsCachedExchange
Set propertyAccessor = oStore.propertyAccessor
If oStore.ExchangeStoreType = olExchangePublicFolder Or oStore.ExchangeStoreType = olPrimaryExchangeMailbox Then
PR_QUOTA_WARNING = propertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x341A0003") / 1024
PR_QUOTA_SEND = propertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x341B0003") / 1024
PR_QUOTA_RECEIVE = propertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x341C0003") / 1024
PR_MESSAGE_SIZE_EXTENDED = propertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x0E080014") / 1024
PR_MESSAGE_SIZE_EXTENDED = PR_MESSAGE_SIZE_EXTENDED / 1024
Debug.Print "PR_QUOTA_WARNING: " & PR_QUOTA_WARNING & " MB"
Debug.Print "PR_QUOTA_SEND: " & PR_QUOTA_SEND & " MB"
Debug.Print "PR_QUOTA_RECEIVE: " & PR_QUOTA_RECEIVE & " MB"
Debug.Print "PR_MESSAGE_SIZE_EXTENDED (Inbox size): " & Round(PR_MESSAGE_SIZE_EXTENDED) & " MB (=" & Round(100 * PR_MESSAGE_SIZE_EXTENDED / PR_QUOTA_RECEIVE) & "%)"
Debug.Print "Free space: " & Round(PR_QUOTA_RECEIVE - PR_MESSAGE_SIZE_EXTENDED) & " MB"
Else
Debug.Print " Quota data not available for local storage"
End If
Debug.Print "------------"
Next
Set oStore = Nothing
End Sub