テキストファイル:データを読み込む(Input 関数・InputB 関数)
Input 関数・InputB 関数
Open ステートメントをシーケンシャル入力モード(Input)または、バイナリモード(Binary)で開いたファイルのデータを読み込みます。カンマ(,)、引用符など、読み取ったすべての文字を取得します。
result = Input ( number, #filenumber )
result = InputB ( numberb, #filenumber )
引数・戻り値
- number ・・・ 取得する文字数を指定します。
- numberb ・・・ 取得するバイト数を指定します。
- filenumber ・・・ Open ステートメント で、割り当てられたファイル番号を指定します。
- result ・・・ 開いたファイルから、取得した文字列型(String)の値。
- number ・・・ 取得する文字数を指定します。
- numberb ・・・ 取得するバイト数を指定します。
- filenumber ・・・ Open ステートメント で、割り当てられたファイル番号を指定します。
- result ・・・ 開いたファイルから、取得した文字列型(String)の値。
Input 関数で読み取るデータは、通常、Print # ステートメント または Put ステートメントでファイルに書き込まれます。
Input 関数・InputB 関数 使用例
Input 関数・InputB 関数 使用例 で読み込むファイルの内容
サンプルVBAソース 1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
Sub Sample_InputFunction1() 'Input関数を使用してファイルの内容を読み込む Dim MyChar Dim str Dim FileName As String Dim FNum As Integer FileName = "C:\Documents\mydata\file01.txt" FNum = FreeFile 'ファイル番号取得 'Input モードでファイルを開く Open FileName For Input As #FNum '文末まで処理を繰り返す(EOF 関数使用) Do Until EOF(FNum) '1文字づつ取得 MyChar = Input(1, #FNum) str = str & MyChar Loop 'ファイルを閉じる Close #FNum '内容を表示 MsgBox str End Sub |
サンプルVBAソース 1 実行結果
サンプルVBAソース 2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
Sub Sample_InputFunction2() 'InputB関数を使用してファイルの内容を読み込む Dim str Dim FileName As String Dim FNum As Integer Dim aaa FileName = "C:\Documents\mydata\file01.txt" FNum = FreeFile 'ファイル番号取得 'Input モードでファイルを開く Open FileName For Input As #FNum 'ファイル内容を一括で取得 str = StrConv(InputB(FileLen(FileName), #FNum), vbUnicode) 'ファイルを閉じる Close #FNum '内容を表示 MsgBox str End Sub |
サンプルVBAソース 2 実行結果
サンプルVBAソース 3
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
Sub Sample_InputFunction3() Dim FileName As String Dim FNum As Integer Dim MyLocation, MyLine 'Input関数を使用してファイルの内容を読み込む FileName = "C:\Documents\mydata\file01.txt" FNum = FreeFile 'ファイル番号取得 'Binary モードでファイルを開く Open FileName For Binary As #FNum '文末まで処理を繰り返す(LOF 関数、Loc 関数使用) Do While MyLocation < LOF(FNum) '1文字づつ取得 MyLine = MyLine & Input(1, #FNum) '現在の読み取り位置を取得 MyLocation = Loc(FNum) Loop '内容を表示 MsgBox MyLine & vbCrLf & "ファイルサイズ:" & MyLocation 'ファイルを閉じる Close #1 End Sub |
サンプルVBAソース 3 実行結果
関連記事
-
Excelでテキストファイルを開く(OpenText メソッド)
Excelでテキストファイルを開く OpenText メソッドで、テキストファイ …
-
開いているファイルの現在の読み取り位置または書き込み位置を取得(Seek 関数)
Seek 関数 Open ステートメント で開いたファイル内の現在の読み取り位置 …
-
「名前を付けて保存」ダイアログボックスを表示(GetSaveAsFilename メソッド)
GetSaveAsFilename メソッド 「名前を付けて保存」ダイアログボッ …
-
EOF 関数
EOF 関数 Open ステートメント をランダムアクセスモード(Random) …
-
「ファイル」ダイアログボックスを表示・設定(FileDialog オブジェクト)
FileDialog オブジェクト FileDialog オブジェクト のメソッ …
-
ディレクトリまたはフォルダの作成(MkDir ステートメント)
ディレクトリまたはフォルダの作成 新しいディレクトリまたはフォルダを作成するには …
-
テキストファイル:データを読み込む(Line Input # ステートメント)
Line Input # ステートメント Open ステートメントをシーケンシャ …
-
フォルダ名・ファイル名を変更(Name ステートメント)
フォルダ名およびファイル名を変更 Name ステートメント で、ファイル、ディレ …
-
テキストファイル:データを書き込む(Write # ステートメント)
Write # ステートメント Open ステートメント をシーケンシャル出力モ …
-
テキストファイル:データを読み込む(Input # ステートメント)
Input # ステートメント Open ステートメント をシーケンシャル入力モ …