Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3009 / 13646 ツリー ←次へ | 前へ→

【64816】EXCELとNotes7の連携について 伊東 10/3/16(火) 11:01 質問[未読]

【64816】EXCELとNotes7の連携について
質問  伊東 E-MAIL  - 10/3/16(火) 11:01 -

引用なし
パスワード
   初めまして。伊東と申します。
質問というのは、EXCELとNotesデータベースの連携ということで、
EXCEL vbaにてNotesデータベースへ接続しデータの取得までは何とかできたのですが、
Notesデータベースの件数が多く、データの取得が非常に時間がかかってしまいます。
そこで、Notesデータベースに対し検索を掛け、件数を減らした上でデータを取得したいと考えています。
何かよい方法があれば、ヒントを教えていただけないでしょうか。

環境としては、EXCEL2003、Notes7です。

以下、ある一つのフィールドを全件取得するためのPGです。
別PCで実行しうまく動作したのですが、手書きでこちらへ移したため誤記があったら申し訳ありません。

Dim NotesSes As Object 'ノーツセッション
Dim Notesdb As Object 'データベース
Dim Notesview As Object 'ノーツビュー名
Dim Notesdoc As Object 'ノーツ文書
Dim tmpVar As Variant
Dim MyData As String
dim i_CNT as long

i_CNT =2 '1行目はタイトルなので2行目から
Set NotesSes = CreateObject("Notes.NotesSession")
Set Notesdb = NotesSes.GETDATABASE("ノーツサーバ名", "データベース名")
Set Notesview = db.GetView(Notesview)

Set Notesdoc = view.GetFirstDocument
Do Until Notesdoc Is Nothing

 tmpVar = Notesdoc.GetItemValue("フィールド名")
 MyData = tmpVar(0)
 sheet1.cells(i,1).value=MyData
 Set Notesdoc = view.GetNextDocument(Notesdoc)
 i_CNT=i_CNT+1
Loop

Set Notesdoc = Nothing
Set Notesdb = Nothing
Set Notessession = Nothing

3009 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free