VBA相当于System.Type.Missing参数值

时间:2016-11-04 14:41:49

标签: vba outlook-addin outlook-vba

我正在使用Outlook加载项和宏。在加载项中,我有一个C#例程,它返回给定日期范围内的所有约会。

请注意以下一行

calItems.Sort("[Start]", System.Type.Missing);

来自例程:

    private Items GetAppointmentsInRange(MAPIFolder folder, DateTime startTime, DateTime endTime)
    {
        string filter = "[Start] >= '" + startTime.ToString("g") + "' AND [End] <= '" + endTime.ToString("g") + "'";

        var calItems = folder.Items;
        calItems.IncludeRecurrences = true;
        calItems.Sort("[Start]", System.Type.Missing);
        Items restrictItems = calItems.Restrict(filter);
        return restrictItems;
    }

我试图在VBA中重写它,但我不确定如何传递System.Type.Missing参数。如果我注释掉该行,结果不仅仅是未排序的,我还会获得更多行。我不知道当时使用了什么过滤器。

Private Function GetAppointmentsInRange(folder, startTime, endTime)

        Dim filter As String

        filter = "[Start] >= '" & _
                  startTime & _
                  " 12:00 AM' AND [End] <= '" & _
                  endTime & " 11:59 PM'"


        Dim calItems
        Set calItems = folder.Items
        calItems.IncludeRecurrences = False
        'calItems.Sort "[Start]", System.Type.Missing
        calItems.Sort "[Start]"
        Dim restrictItems

        Set restrictItems = calItems.Restrict(filter)

        If (restrictItems.Count > 0) Then
            Set GetAppointmentsInRange = restrictItems
        Else
            Set GetAppointmentsInRange = Nothing
        End If

End Function        

C#代码有效。如何在VBA中复制System.Type.Missing代码行?

0 个答案:

没有答案