VBAファイルを開き,読取,書込,追加書込(OpenAsTextStream)

投稿者: | 2023年4月26日
excelアイコン

FileオブジェクトのOpenAsTextStreamメソッドについてです。

OpenAsTextStreamメソッド

概要

指定したファイルを開き、読取、書込、追加書込に使用できるTextStreamオブジェクトを返します。

構文

FileObject.OpenAsTextStream([iomode,[format]])

[ ]は省略可

OpenAsTextStreamメソッドの引数

引 数必須 / 省略可詳 細

入出力モード
(iomode)

 省略可

入出力のモードを指定。
・読込み:ForReading
・書込み(上書):ForWriting
・書込み(追記):ForAppending

文字コード
(format)

省略可

開くファイルの文字コードを指定。
・省略 → ASCII形式でファイルが開きます。

入出力モードの引数の詳細

定 数詳 細

ForReading

1

ファイルを読み取り専用として開きます。

ForWriting

2

ファイルを書き込み専用(上書)として開きます。 

ForAppending

8

ファイルを書き込み専用(追記)として開きます。 

文字コードの引数の詳細

定 数詳 細

TristateUseDefault

-2

システムの既定の設定でファイルを開きます。

TristateTrue

-1

Unicode形式でファイルを開きます。

TristateFalse

0

Ascii形式でファイルを開きます(既定値)

 

VBAサンプル

ファイルに書き込む(上書き)

FileオブジェクトのOpenAsTextStreamメソッドを使用するには、FileSystemObjectGetFileメソッドFileオブジェクトが返るので、FileオブジェクトのOpenAsTextStreamメソッドで入出力モードを上書き(ForWriting)にしてファイルを開くとTextStreamオブジェクトが返るので、TextStreamオブジェクトのWriteメソッドで書き込みます。

もしくは下記みたいな短縮する書き方もあります。

結果

test.txt(テキストファイル)に上書きされます。