Openメソッド解説(Excel VBA)

Excel VBA: Openメソッドについて

VBAのOpenメソッドは、ファイルを開くために使用される基本的なメソッドです。このメソッドは多くの引数を持つことが可能で、これにより多様なシナリオに対応できます。

基本的な使用法

Openメソッドの最も基本的な使用法は以下の通りです:

Open FilePath For Mode As #FileNumber

ここで、FilePathは開くファイルのパス、Modeはファイルを開くモード(Input、Output、Appendなど)、FileNumberはファイル番号を表します。

引数について

  • FilePath: 開くファイルのフルパスを指定します。
  • Mode: ファイルをどのように開くかを指定します。可能な値は、Input(読み取り専用)、Output(書き込み専用)、Append(追記モード)、Binary(バイナリモード)です。
  • FileNumber: 開くファイルに対応するファイル番号を指定します。これは通常、FreeFile関数で取得した結果を使用します。

サンプルコード

以下に、Openメソッドを使用してファイルを読み込む基本的なVBAのSubプロシージャを示します。


            Sub ReadFile()
                Dim FilePath As String
                Dim FileNumber As Integer
                Dim LineData As String
                
                FilePath = "C:\temp\sample.txt"
                FileNumber = FreeFile

                Open FilePath For Input As #FileNumber
                
                Do Until EOF(FileNumber)
                    Line Input #FileNumber, LineData
                    Debug.Print LineData
                Loop
                
                Close #FileNumber
            End Sub
        

このサンプルコードは”C:\temp\sample.txt”というパスのテキストファイルを開き、その内容を行単位で読み取って出力ウィンドウに表示します。FreeFile関数は使用可能なファイル番号を返し、この値がOpenメソッドで使用されます。Do Until EOF(FileNumber)ループはファイルの終わりに達するまで続けられ、Line Inputステートメントはファイルから1行ずつ読み取ります。