需要關於vba代碼的幫助。請看下面的代碼。VBA:在lotus notes文檔中查看FTSearch語法
我想要查看QA \ QA Schedule中的所有文檔(1sep2013 - 30sep2013)。在這裏它不是文檔創建日期,它是從視圖的列中獲取的日期,以便我可以在Excel中拖動數據。
'下面是代碼,我已經構建了它正在搜索的代碼,它正在搜索所有文檔並讓我獲得花費大量時間的數據。如果可以在日期添加過濾器,我們可以做得更快一點,但我不知道FT搜索語法。如何在視圖列上使用它。請幫助它,這真的很緊迫。
Dim nSess As Object 'NotesSession
Dim sPwd As String
Dim strCnxn As String
Dim strSQL As String
Dim db As Object
Dim iviews As Object
Dim IView As Object
Set nSess = CreateObject("Lotus.NotesSession") 'New:{29131539-2EED-1069-BF5D- 00DD011186B7}
myUsername = ****
myPassword = ****
DSN1 = ("Driver={Lotus NotesSQL Driver (*.nsf)};Server=;Database=;Uid=" & myUsername & ";Pwd=" & myPassword & ";")
Call nSess.Initialize(sPwd)
Set db = nSess.GetDatabase("", "")
Set iviews = db.GetView("QA\QA Schedule")
iviews.AutoUpdate = False
Set IView = iviews.AllEntries
Set viewparentEntry = IView.Parent
Set viewEntry = viewparentEntry.GetFirstDocument
For i = 1 To IView.Count
Colval = viewEntry.ColumnValues()
For j = 0 To 20
If Colval(0) <> "2013 9" Then
Exit For
ElseIf Colval(18) >= "" Or Colval(18) <= "" Then
Exit For
ElseIf Colval(18) >= "09/01/2013" Or Colval(18) <= "09/30/2013" Then
Sheets("Sheet2").Cells(RowCount, colcount).Value = Colval(j)
colcount = colcount + 1
Else
Exit For
End If
Next
j = 0
colcount = 1
RowCount = RowCount + 1
Set viewEntry = viewparentEntry.GetNextDocument(viewEntry)
Next
什麼是視圖列的公式?如果它只是指存儲在文檔中的日期時間字段,那麼您應該可以使用FTSearch語法。如果不是,那麼它可能會很棘手。 –
我不知道如何在VBA中使用FTsearch語法。 Exec_date是視圖中的列。所以我如何使用這裏的FTsearch語法.. –
您可以使用NotesDatabase類的FTSearch方法。你可以在這裏找到文檔:http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/index.jsp?topic=%2Fcom.ibm.designer.domino.main.doc%2FH_FTSEARCH_METHOD_DB.html –