FileAttr関数

FileAttr関数は、VBA関数の中でファイル・フォルダに関する関数に分類される関数です。

目次

スポンサー リンク

FileAttr関数とは

FileAttr関数は、Open ステートメントで開いたファイルのファイル モードを示す長整数型 (Long) の値を返します。

構文FileAttr(filenumber, returntype)
引数省略説明
filenumber ×整数型 (Integer) の数値を指定します。任意のファイル番号を指定します。
returntype ×整数型 (Integer) の数値を指定します。取得するファイル情報の種類を示す、1 または 2 を指定します。 1ファイル モードを示す値を返します。
2ファイル ハンドルを返します。
16 ビット システムでのみ、オペレーティング システムのファイル ハンドルを取得するために 2 を指定します。32 ビット システムでは引数 Returntype に 2 を指定することはできません。2 を指定すると、エラーが発生します。

返り値

引数 returnType に 1 を指定すると、ファイル モードを示す次の値を返します。
ファイル モード
シーケンシャル入力モード (Input)1
シーケンシャル出力モード (Output) 2
ランダム アクセス モード (Random) 4
シーケンシャル出力モード (Append) 8
バイナリ モード (Binary) 32

FileAttr関数のサンプルコード

次の例は、FileAttr 関数を使って、開いているファイルのファイル ハンドルとファイル モードを返します。ファイル ハンドルは、16 ビット システムを使用している場合にのみ返されます。32 ビット システムでは、引数 2 を指定するとエラーが発生します。


Sub Sample

Dim FileNum, Mode, Handle
FileNum = 1                            ' ファイル番号を割り当てます。
Open "TESTFILE" For Append As FileNum        ' ファイルを開きます。
Mode = FileAttr(FileNum, 1)            ' 8 (追加モード (Append)) を取得します。
Handle = FileAttr(FileNum, 2)            ' ファイル ハンドルを取得します。
Close FileNum                            ' ファイルを閉じます。

End Sub

※ドラッグ(スワイプ)すると全体を確認できます。

実行結果

解説

ファイル・フォルダに関する関数一覧

関数名内容
CurDir指定したドライブの現在のパスを返します。
Dir指定したパターンやファイル属性と一致するファイルまたはフォルダの名前を返します。
EOFファイルの現在位置が末尾かどうかを調べて結果を返します。
FileAttrファイルから指定した種類の情報を返します。
FileDateTimeファイルの作成日時または最後に修正した日を返します。
FileLenファイルのサイズを返します。
FreeFile指定したファイル番号の範囲から、次に使用可能なファイル番号を返します。
GetAttrファイルまたはフォルダの属性を返します。
Loc開いているファイルの読込位置または書き込み位置を返します。
LOF開いているファイルの長さを返します。
Seek開いているファイルの読込位置または書き込み位置を返します。
Tab文字の出力位置を移動します。
VarType変数の内容を示す値を返します。
ExcelのVBAについてのQ&A掲示板

↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください。

VBAのIE操作入門

↑ExcelのVBAをマスターできたら、エクセルVBAのIE操作にも挑戦してみてください。

目次

VBAのステートメント

こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのオブジェクト

こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのプロパティ

こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのメソッド

こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

VBAのイベント

こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。