ファイルのサイズを返す - FileLen関数 [ExcelのVBA]
FileLen関数
FileLen関数はファイルのサイズを返します。
分類 | ファイル |
---|
書式
FileLen(pathname)
pathname | ファイルへのフルパス名 |
使用例
次はCドライブにある「test.txt」ファイルを読み込んだ例となります。
Private Sub CommandButton1_Click() Dim fileNo As Integer ' ファイル番号 Dim buffer As String ' 一時的に文字列を格納 Dim Str As String ' ファイルの内容 Dim filename As String ' ファイル名 ' 読み込むファイル名 filename = "C:\test.txt" Debug.Print "ファイル名:" & filename Debug.Print "最終更新日:" & FileDateTime(filename) ' ファイルの属性 Debug.Print "ファイルの属性に「通常ファイル」があります。" If ((GetAttr(filename) And vbReadOnly) = vbReadOnly) Then Debug.Print "ファイルの属性に「読み取り専用」があります。" End If If ((GetAttr(filename) And vbHidden) = vbHidden) Then Debug.Print "ファイルの属性に「隠しファイル」があります。" End If If ((GetAttr(filename) And vbSystem) = vbSystem) Then Debug.Print "ファイルの属性に「システムファイル」があります。" End If If ((GetAttr(filename) And vbDirectory) = vbDirectory) Then Debug.Print "ファイルの属性に「フォルダ」があります。" End If If ((GetAttr(filename) And vbArchive) = vbArchive) Then Debug.Print "ファイルの属性に「アーカイブ」があります。" End If If ((GetAttr(filename) And vbAlias) = vbAlias) Then Debug.Print "ファイルの属性に「エイリアス」があります。" End If ' ファイルを開く為のファイル番号を取得 fileNo = FreeFile ' 指定されたファイルを開く Open filename For Input As #fileNo ' ファイルモード Select Case FileAttr(fileNo) Case 1: Debug.Print "ファイルモード:Inputモード" Case 2: Debug.Print "ファイルモード:Outputモード" Case 4: Debug.Print "ファイルモード:Randomモード" Case 8: Debug.Print "ファイルモード:Appendモード" Case 32: Debug.Print "ファイルモード:Binaryモード" End Select Debug.Print "LOFによるファイルサイズ取得:" & CStr(LOF(fileNo)) & "バイト" Debug.Print "FileLenによるファイルサイズ取得:" & CStr(FileLen(filename)) & "バイト" ' ファイルがEOF(ファイルの終端)になるまでループをする Do Until EOF(fileNo) ' ファイルの位置 Debug.Print "Seekによる現在位置取得:" & CStr(Seek(fileNo)) ' ファイルから一行づつbufferに読み込む Line Input #fileNo, buffer ' 読み込んだファイル内容を格納する Str = Str + buffer + vbCrLf Loop Close #fileNo Debug.Print "" Debug.Print "--- 以下はファイル内容 ---" Debug.Print Str End Sub
結果

※UTF8に対応したファイルの読み込みは「ファイルの操作(Shift-JIS/UTF8対応)」の記事をご覧ください。
Visual Basicのファイル換関数
関数名 | 内容 |
---|---|
EOF | ファイルの現在位置が終端の場合にTrueを返す |
FileAttr | オープンしたファイルのファイルモードを返す |
FileDateTime | ファイルの作成日時または最終更新日時を返す |
FileLen | ファイルのサイズを返す |
FreeFile | ファイルをオープンする為のファイル番号を返す |
GetAttr | ファイルやフォルダの属性を返す |
Input/InputB | ファイルから指定文字数を読み込む |
LOF | オープンしているファイルの長さを返す |
Seek | オープンしているファイルの位置を返す |
エクセル講座のクイックリンク
スポンサーリンク
関連記事
前の記事: | ファイルの作成日時または最終更新日時を返す - FileDateTime関数 [ExcelのVBA] |
次の記事: | ファイルをオープンする為のファイル番号を返す - FreeFile関数 [ExcelのVBA] |
公開日:2015年07月08日
記事NO:01161
この記事を書いた人
![]() | 💻 ITスキル・経験 サーバー構築からWebアプリケーション開発。IoTをはじめとする電子工作、ロボット、人工知能やスマホ/OSアプリまで分野問わず経験。 画像処理/音声処理/アニメーション、3Dゲーム、会計ソフト、PDF作成/編集、逆アセンブラ、EXE/DLLファイルの書き換えなどのアプリを公開。詳しくは自己紹介へ |
プチモンテ代表、アーティスト名:プチモンテ | |
🎵 音楽制作 BGMは楽器(音源)さえあれば、何でも制作可能。歌モノは主にロック、バラード、ポップスを制作。歌詞は叙情詩、叙情的な楽曲が多い。楽曲制作は2023年12月中旬 ~ |
オリジナル曲を始めました✨
YouTubeで各楽曲を公開しています🌈
https://www.youtube.com/@petitmonte