[ノーツ FAQ トップへ]

Lotus Notes Domino (ロータス ノーツ ドミノ) FAQ


スポンサード リンク



Q ビューから複数文書をCSVとして書き出すにはどうすればよいのですか。改行を取り除く必要もあります。

A 以下のような式をビュー上のアクションに作成します。以下の例では、各文書のfield1,field2,field3,field4,field5のをカンマ区切りのCSVファイルとして書き出します。Excell等で読み込めるように、改行は削除します。

Dim db As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Dim fileNum As Integer

Set db = session.CurrentDatabase
Set collection = Db.UnprocessedDocuments

fileName=Inputbox( "書き出すファイル名を入力してください" , "ファイル名の指定" ,"c:\temp.csv")

If fileName="" Then
Exit Sub
End If

fileNum=Freefile()
stringToWrite=""
Open fileName For Output Access Write As fileNum

For i = 1 To collection.Count
Set doc = collection.GetNthDocument( i )
FormName=doc.form
If FormName(0)="FormMain" Then
stringToWrite=stringToWrite+doc.field1(0)+","
stringToWrite=stringToWrite+doc.field2(0)+","
stringToWrite=stringToWrite+doc.field3(0)+","
stringToWrite=stringToWrite+doc.field4(0)+","
stringToWrite=stringToWrite+doc.field5(0)

'改行を取り除く
For j=1 To Len(stringToWrite)
c=Mid(stringToWrite,j,1)
If c=Chr$(13) Then

stringToWrite=Mid(stringToWrite,1,j-1)+Mid(stringToWrite,j+1,Len(stringToWrite)-j)

End If
Next j
Print #fileNum,stringToWrite
End If
Next
Close FileNum
Msgbox "出力が完了しました。"



本ページは IBM Lotus Notes Domino (ロータスノーツドミノ)を対象としています。 基本的には Notes 4,5,及び6以後を対象としていますが、バージョンによっては対応していない場合があります。 lotus scriptや @関数 (@コマンド)を対象としていて、VB Scriptには対応していません。 本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。)

[ノーツ FAQ トップへ]


スポンサード リンク