Sizeプロパティは指定したフォルダやファイルのサイズ(容量)を返します。なお、ファイルの場合は指定したファイルのサイズ(容量)、フォルダの場合は指定フォルダに含まれるすべてのサブフォルダの合計サイズ(容量)となり、サイズ(容量)はバイト(byte)単位で表示されます。
※ファイルシステムオブジェクト(FileSystemObject)についてはこちら
Sizeプロパティの構文
構文
フォルダまたはファイルオブジェクト(Object).Size
Sizeプロパティの構成要素と引数
構成要素と引数
要素/引数 | 必須/任意 | 説明 |
---|---|---|
フォルダまたはファイルオブジェクト (Object) |
必須 | フォルダまたはファイルを指定します。 |
その他のポイント
Sizeプロパティを利用してフォルダやファイルのサイズ(容量)をバイト単位で取得します。
Sizeプロパティをつかったサンプルマクロ
次のマクロはSizeプロパティを利用してイミディエイトウィンドウに指定したフォルダとファイルのサイズ(容量)をバイト単位で表示します。
サンプルコード
Option Explicit
Sub ファイルシステムオブジェクト_Sizeプロパティ1()
'ファイルシステムオブジェクトを使うため準備
'①事前バインディングの場合はVBEのツールより参照設定で「Microsoft Scripting Runtime」にチェックをしてください。
Dim FSO As FileSystemObject
Set FSO = New FileSystemObject
'フォルダおよびファイルオブジェクトを代入する変数の宣言
Dim FolderObject As Object, FileObject As Object
'GetFolderメソッドでフォルダオブジェクトを代入
Set FolderObject = FSO.GetFolder("C:\Users\ユーザー名\Desktop\Test")
'GetFileメソッドでファイルオブジェクトを代入
Set FileObject = FSO.GetFile("C:\Users\ユーザー名\Desktop\Test\サンプル画像.jpg")
'Sizeプロパティを利用してフォルダのサイズを表示する
Debug.Print "① "; FolderObject.Size&; "bytes"
'Sizeプロパティを利用してフォルダのサイズを表示する
Debug.Print "② "; FileObject.Size&; "bytes"
End Sub
実行結果
① 57585 bytes
② 7343 bytes
指定したフォルダとファイルのサイズ(容量)をバイト単位でイミディエイトウィンドウに表示します。
Sizeプロパティをつかうときはオブジェクトを取得してから使おうね。
次のマクロはSizeプロパティで求めたサイズ(容量)を、キロバイト単位に変換した結果をイミディエイトウィンドウにキロバイト単位で表示します。
※RoundUp関数をつかって引数に指定した値を値を切り上げしています。
サンプルコード
Option Explicit
Sub ファイルシステムオブジェクト_Sizeプロパティ2()
'ファイルシステムオブジェクトを使うため準備
'①事前バインディングの場合はVBEのツールより参照設定で「Microsoft Scripting Runtime」にチェックをしてください。
Dim FSO As FileSystemObject
Set FSO = New FileSystemObject
'フォルダおよびファイルオブジェクトを代入する変数の宣言
Dim FolderObject As Object, FileObject As Object
'GetFileメソッドでファイルオブジェクトを代入
Set FileObject = FSO.GetFile("C:\Users\ユーザー名\Desktop\Test\サンプル画像.jpg")
'ファイルのサイズをキロバイトに変換した値を代入する変数を宣言する
Dim Filesize As Double
'ワークシート関数のRoundUpをつかってキロバイトに変換する
Filesize = Application.WorksheetFunction.RoundUp(FileObject.Size / 1024, "0")
'Sizeプロパティを利用してフォルダのサイズを表示する
Debug.Print "③ "; Filesize; "kbytes"
End Sub
実行結果
③ 8 kbytes
Sizeプロパティで返されたファイルの容量を、バイト単位からキロバイト単位に変換してイミディエイトウィンドウに表示します。
Windowsのエクスプローラーやプロパティではキロバイト(KB)で表示されているね。
オンラインスクールで現役エンジニアのサポートがあるテックアカデミーがおすすめ。
スキマ時間に学べて仕事も保証。必ず副業、始められます。まずは無料でプログラミング体験
コダマのもりブログはにほんブログ村に登録しています。
ブログの記事が役に立ったと感じて頂けたら、フォローお願いいたします。
コメント