Recipient.FreeBusy method (Outlook)

Returns free/busy information for the recipient.


expression. FreeBusy( _Start_ , _MinPerChar_ , _CompleteFormat_ )

expression A variable that represents a Recipient object.


Name Required/Optional Data type Description
Start Required Date The start date for the returned period of free/busy information.
MinPerChar Required Long The number of minutes per character represented in the returned free/busy string.
CompleteFormat Optional Variant True if the returned string should contain not only free/busy information, but also values for each character according to the OlBusyStatus constants.

Return value

A String value that represents the free/busy information.


The default is to return a string representing one month of free/busy information compatible with the Microsoft Schedule+ Automation format (that is, the string contains one character for each MinPerChar minute, up to one month of information from the specified Start date).

If the optional argument CompleteFormat is omitted or False, then "free" is indicated by the character 0 and all other states by the character 1.

If CompleteFormat is True, then the same length string is returned as defined above, but the characters now correspond to the OlBusyStatus constants.


This Visual Basic for Applications (VBA) example uses the FreeBusy method to return a string of free/busy information with one character for each day. This example allows for the possibility that the free/busy information for this recipient is not accessible. To run this example, you need to replace 'Nate Sun' with a valid recipient name.

Public Sub GetFreeBusyInfo() 
 Dim myNameSpace As Outlook.NameSpace 
 Dim myRecipient As Outlook.Recipient 
 Dim myFBInfo As String 
 Set myNameSpace = Application.GetNamespace("MAPI") 
 Set myRecipient = myNameSpace.CreateRecipient("Nate Sun") 
 On Error GoTo ErrorHandler 
 myFBInfo = myRecipient.FreeBusy(#11/11/2003#, 60 * 24) 
 MsgBox myFBInfo 
 Exit Sub 
 MsgBox "Cannot access the information. " 
End Sub

This VBA example returns a string of free/busy information with one character for each hour (complete format).

Set myRecipient = myNameSpace.CreateRecipient("Nate Sun") 
myFBInfo = myRecipient.FreeBusy(#8/1/03#, 60, True)

See also

Recipient Object

Support and feedback

Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.