トップページ >  エクセル マクロ >  ファイル書き出し
初版2011/02/06: 最終更新日2011/02/06
  ファイル書き出し
目次
ファイル書き出し
WriteとPrint
追加書き
ファイル書き出し
マクロでファイル書き出しを行うにはFreeFileステートメントとOpenステートメントを使用します。
FreeFileの戻り値はファイル番号を返します。この番号をファイル書き出しの際や、ファイルクローズの際に使用します。
Inf = FreeFile
Open "c:¥tools¥a.txt" For Output As #Inf

これでa.txtというファイルを出力モードで操作できるようになります。
Outputとした場合、存在しないファイルを指定した場合は新規作成されます。
既にファイルが存在する場合は上書き保存してしまいます。

ファイルを出力するにはWriteステートメントを使用します。

Inf = FreeFile
Open "c:¥tools¥a.txt" For Output As #Inf
Write #inf "テスト"

toolsというフォルダが存在しない場合はエラーとなります。その場合はフォルダを作成してください。
これでa.txtというファイルに"テスト"と出力されます。

WriteとPrint
Writeステートメントは出力する際にダブルクォーテーションで文字を囲みます。そうしないと正常に出力されません。
エクセルのセルを出力する際も勝手にダブルクォーテーションで囲まれて出力されます。
Printの場合はそのまま出力されるためダブルクォーテーションが出力されません。
改行コードは勝手に出力されますが、出力したくない場合は;を最後につけます。

Inf = FreeFile
Open "c:¥tools¥a.txt" For Output As #Inf;
Print #inf "テスト";

追加書き
ファイルを追加書きモードで書き出ししたい場合は、OpenステートメントでOutputではなくAppendを指定するだけです。