FreeBusy Method

Returns free/busy information for the recipient. 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: olBusy, olFree, olOutOfOffice, or olTentative.

expression**.FreeBusy(Start**, MinPerChar, CompleteFormat)

*expression   * Required. An expression that returns a Recipient object.

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: olBusy, olFree, olOutOfOffice, and olTentative.


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 myOlApp As New Outlook.Application
    Dim myNameSpace As Outlook.NameSpace
    Dim myRecipient As Outlook.Recipient
    Dim myFBInfo As String
    Set myNameSpace = myOlApp.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)

Applies to | Recipient Object