我正在慢慢嘗試了解 COM 類而不是 Lotus Notes 中的 UI 類,我不知道為什么我的函式在開始時不使用任何 UI 類時突然拋出錯誤。
Public Sub Forward_Email(findSubjectLike As String, forwardToEmailAddresses As String)
Dim NSession As Object
Dim NMailDb As Object
Dim NViewObj As Object
Dim NInboxView As Object
Dim NDocument As Object
Dim NUIWorkspace As Object
Dim NUIDocument As Object
Dim NFwdUIDocument As Object
Set NSession = CreateObject("Lotus.NotesSession")
Call NSession.Initialize("")
Set NMailDb = NSession.GetDatabase("", "", False)
Set NViewObj = NMailDb.GetView("$Inbox")
Set NDocument = Find_Document(NInboxView, findSubjectLike)
For Each NViewObj In NMailDb.Views
If NViewObj.IsFolder And NViewObj.Name = "($Inbox)" Then
Set NInboxView = NViewObj
Exit For
End If
Next
Set NDocument = Find_Document(NInboxView, findSubjectLike)
End Sub
Private Function Find_Document(NView As Object, findSubjectLike As String) As Object
Dim NThisDoc As Object
Dim thisSubject As String
Set Find_Document = Nothing
Set NThisDoc = NView.GetFirstDocument
While Not NThisDoc Is Nothing And Find_Document Is Nothing
thisSubject = NThisDoc.GetItemValue("Subject")(0)
If LCase(thisSubject) = LCase(findSubjectLike) Then Set Find_Document = NThisDoc
Set NThisDoc = NView.GetNextDocument(NThisDoc)
Wend
End Function
.GetFirstDocument 行拋出物件變數未設定錯誤。對原因的任何見解將不勝感激。
uj5u.com熱心網友回復:
如果 NView 為空,則 GetFirstDocument 行將拋出未設定的物件變數。NView 為空。查看您對 Find_Document 函式的第一次呼叫。你在那里有兩個電話。我不知道為什么。他們倆看起來像這樣:
Set NDocument = Find_Document(NInboxView, findSubjectLike)
您將視圖作為 NInboxView 傳遞。兩次。
現在看上面的第一個呼叫。你還沒有設定 NInboxView。您可以設定一個名為 NViewObj 的變數。所以對于第一次呼叫, NInboxView 為空。您使用 GetView 設定的 NViewObj 可能不為空。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/314269.html
上一篇:設定將粘貼范圍的輸入框
