【VBA言語】データを書込む・読込む(Write, Input)【初心者向け徹底解説】

【VBA言語】データを書込む・読込む(Write, Input)【初心者向け徹底解説】

データ書込む基本操作

VBAでのデータの書き込みは、主に「Print」と「Write」を使って行います。

Writeステートメント

Writeは、データを指定したファイルに書き込むために使います。テキスト形式で書き込むため、改行やタブが自動的に追加されません。

Open "C:\path\to\file.txt" For Output As #1
Write #1, "こんにちは", 123
Close #1

上記の例では、ファイル「file.txt」に「こんにちは」と「123」を書き込みます。

Printステートメント

Printは、より一般的に使われる書き込み方法で、出力される内容は自動的に改行されます。

Open "C:\path\to\file.txt" For Output As #1
Print #1, "こんにちは"
Print #1, 123
Close #1

このコードでは、「こんにちは」と「123」がファイルに書き込まれ、それぞれが新しい行に記録されます。

Inputステートメントによるデータの読み込み

Inputステートメントは、ファイルからデータを読み込むために使用します。

Open "C:\path\to\file.txt" For Input As #1
Input #1, strData, intNumber
Close #1

この例では、ファイルから「strData」と「intNumber」を読み込みます。Inputを使うことで、ファイル内の内容を変数に格納できます。

データの順番と形式

ファイルからデータを読み込む際、Inputは読み込む順番とデータ形式を合わせる必要があります。

Open "C:\path\to\file.txt" For Input As #1
Input #1, strData
Input #1, intNumber
Close #1

この場合、ファイルの内容が「こんにちは」と「123」の順番であることを前提としています。

ファイル操作: データの保存と読み込み

ファイル操作では、データを一時的に保存するためにファイルを開き、必要な操作を行った後に閉じるという流れが基本です。

ファイルを開く

ファイルを開くには、Openステートメントを使います。例えば、データを書き込むためにファイルを開くには次のようにします。

Open "C:\path\to\file.txt" For Output As #1

ファイルを閉じる

ファイルを操作し終わったら、必ずファイルを閉じる必要があります。閉じるにはCloseを使用します。

Close #1

テキストファイルを使ったデータの入出力

テキストファイルを使うことで、データの保存や読み込みが非常に簡単になります。例えば、複数行のデータをファイルに書き込んだり、逆にファイルからデータを一行ずつ読み込んだりできます。

複数行のデータを書き込む

Open "C:\path\to\file.txt" For Output As #1
Print #1, "データ1"
Print #1, "データ2"
Print #1, "データ3"
Close #1

ファイルから複数行のデータを読み込む

Open "C:\path\to\file.txt" For Input As #1
Do Until EOF(1)
    Line Input #1, strLine
    MsgBox strLine
Loop
Close #1

このコードでは、ファイルから一行ずつデータを読み込んでメッセージボックスで表示します。

実践的な例: CSVファイルの書き込み

CSVファイルは、データをコンマ区切りで保存する形式で、Excelなどで読み込んだり編集したりするのに便利です。

CSVファイルにデータを書き込む

Open "C:\path\to\data.csv" For Output As #1
Write #1, "名前", "年齢", "住所"
Write #1, "田中", 25, "東京"
Write #1, "鈴木", 30, "大阪"
Close #1

上記の例では、名前、年齢、住所をコンマ区切りでCSV形式で書き込んでいます。

ファイルのエラーチェックとエラー処理

ファイル操作を行う際は、エラーが発生する可能性もあります。例えば、指定したファイルが存在しない場合や、アクセス権限がない場合などです。エラー処理を行うことで、プログラムの安定性を高めることができます。

エラー処理の基本

VBAでは、On Errorステートメントを使ってエラー処理を行います。

On Error GoTo ErrorHandler
Open "C:\path\to\file.txt" For Input As #1
' ファイル操作のコード
Close #1
Exit Sub

ErrorHandler:
MsgBox "エラーが発生しました。"
Close #1

このコードでは、エラーが発生した場合に「エラーが発生しました」というメッセージを表示します。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です