2004/07/06
Lotus NotesのデータをEXCELで取る
by
seko
—
posted at
2004-07-06 00:00
last modified
2006-05-04 20:52
pythonからNotesのデータが取れるのであれば、EXCELからも当然取れるということにふと気づく。次の例はsheet1に取りたいフィールド名を書いておくと、sheet2にデータが取れるというものである。
実際に使う場合は、EXCELの範囲に名前を付けておき、一行目にフィールド名を書くようにして、列の追加や削除が合った場合でもプログラムの変更が必要ないようにしておくと良い。そうしておけば、ユーザがEXCELの機能だけを使って、フィールドの追加、削除をすれば、ほしいデータが取れるようになる。また、NOTESへのリンクをお尻につけているので、EXCEL上のリンクをダブルクリックするとNOTESに飛ぶこともできる。
Sub getSubject()
Dim nSs As Object, nDb As Object
Dim nDocs As Object, nDoc As Object
Application.Visible = True
DBServer = "CN=hoge/O=hoge" 'Server name
DBFile = "hoge.nsf" 'Database name
Set nSs = CreateObject("Notes.NotesSession")
Set nDb = nSs.GetDataBase(DBServer, DBFile)
Set nDocs = nDb.GetView("hoge") 'select View
N = nDocs.EntryCount
Set nDoc = nDocs.GetFirstDocument
For i = 1 To N
For j = 1 To 5
field = Sheet1.Cells(1, j)
Sheet2.Cells(i, j).Value = nDoc.GetItemValue(field)(0)
Next
Sheet2.Cells(i, 6).Value = nDoc.NotesURL
Set nDoc = nDocs.GetNextDocument(nDoc) ' select next Document
Next
End Sub
- Category(s)
- Lotus Notes
- EXCEL
- The URL to Trackback this entry is:
- http://lightson.dip.jp/blog/seko/14/tbping