【VBA】指定したファイルのサイズを取得する

エクセルVBAで使うコードの備忘録。VBAで指定したファイルのサイズを取得するコード。ファイルシステムオブジェクトを使ってファイルオブジェクトのSizeプロパティから取得します。

スポンサーリンク

ファイルシステムオブジェクトを使う

ウィンドウズのファイルやフォルダに関連する情報を扱う場合は、ファイルシステムオブジェクトを使用します。今回も指定したファイルのサイズという情報なのでこの方法が使えます。

下記のサンプルコードでは、ファイルシステムオブジェクトから指定したファイル名のファイルを表すファイルオブジェクトを取得し、それのサイズプロパティにアクセスしています。ちなみにサイズはバイト単位で返されます。

なお、サンプルコードを使用する際はカッコに囲まれた部分([***])を自分のプログラムに合わせて変更してください。

サンプルコード

Public Sub GetFileSize()
    
    '--- サイズを知りたいファイルのパス ---'
    Dim filePath As String
    filePath = "[ファイルのパス]"
    
    '--- ファイルシステムオブジェクト ---'
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    
    '--- サイズを格納する ---'
    Dim size As Long
    size = fso.GetFile(filePath).size

End Sub