次のエージェントは、文書の Body アイテムのすべての要素を数えます。
Sub Initialize
Dim session As NotesSession
Dim db As NotesDatabase
Dim dc As NotesDocumentCollection
Dim doc As NotesDocument
Dim body As NotesRichTextItem
Dim rtnav As NotesRichTextNavigator
Set session = New NotesSession
Set db = session.CurrentDatabase
Set dc = db.UnprocessedDocuments
Set doc = dc.GetFirstDocument
Set body = doc.GetFirstItem("Body")
Set rtnav = body.CreateNavigator
REM Get count of doclinks
count% = GetElementCount(rtnav, RTELEM_TYPE_DOCLINK)
msg$ = msg$ & "Doclinks:" & Chr(9) & Chr(9) & count% & Chr(10)
REM Get count of file attachments
count% = GetElementCount(rtnav, RTELEM_TYPE_FILEATTACHMENT)
msg$ = msg$ & "File attachments:" & Chr(9) & count% & Chr(10)
REM Get count of embedded objects
count% = GetElementCount(rtnav, RTELEM_TYPE_OLE)
msg$ = msg$ & "Embedded objects:" & Chr(9) & count% & Chr(10)
REM Get count of sections
count% = GetElementCount(rtnav, RTELEM_TYPE_SECTION)
msg$ = msg$ & "Sections:" & Chr(9) & Chr(9) & count% & Chr(10)
REM Get count of tables
count% = GetElementCount(rtnav, RTELEM_TYPE_TABLE)
msg$ = msg$ & "Tables:" & Chr(9) & Chr(9) & count% & Chr(10)
REM Get count of tables
count% = GetElementCount(rtnav, RTELEM_TYPE_TABLE)
msg$ = msg$ & "Tables:" & Chr(9) & Chr(9) & count% & Chr(10)
REM Get count of text paragraphs
count% = GetElementCount(rtnav, RTELEM_TYPE_TEXTPARAGRAPH)
msg$ = msg$ & "Text paragraphs:" & Chr(9) & count% & Chr(10)
REM Get count of text runs
count% = GetElementCount(rtnav, RTELEM_TYPE_TEXTRUN)
msg$ = msg$ & "Text runs:" & Chr(9) & Chr(9) & count% & Chr(10)
REM Display counts
Messagebox msg$,, doc.Subject(0)
End Sub
Function GetElementCount(rtnav As NotesRichTextNavigator, eType As Integer) As Integer
GetElementCount = 0
If rtnav.FindFirstElement(eType) Then
Do
GetElementCount = GetElementCount + 1
Loop While rtnav.FindNextElement()
End If
End Function