- 日時: 2015/02/11 19:26
- 名前: 花ちゃん
- ***********************************************************************************
* カテゴリー:[フォルダー][ファイル][] * * キーワード:,フォルダー内のファイル数,ファイルの総容量,ファイルサイズ * ***********************************************************************************
------------------------------------------------------------------------------------ No.1876 Re:ファイル数を高速で取得する方法 投稿者:ゆう(U) [2001/02/22(木)14:06分] ------------------------------------------------------------------------------------
環境にもよりますが・・・
「FileSystemObject オブジェクト」でファイル数やフォルダーサイズを取得できます。 ※期待してる方のサイズかは不明ですが・・・
サンプル) Private Sub Command1_Click() Dim objFSO As Object Set objFSO = CreateObject("Scripting.FileSystemObject") With objFSO.GetFolder(App.Path & "\Test") Debug.Print .Size Debug.Print .Files.Count End With End Sub ※サブフォルダのファイル数は別途加算してください
-------------------------------------------------------------------------- ゆう(U)さん ありがとうございました。
試したところ「FileSystemObject オブジェクト」が一番早かったです。 それでも 2万件近くなると10秒ほどかかりました。 参考までに実験結果をお知らせします。
Windowsの共有パソコンの約20,000件のファイルがあるフォルダーにアクセスした時の平均速度。
FileSystemObjectの.Files.Countを取得 9 秒 Dir( )関数でLoopしてカウント 12 秒 FileListBoxに読み込ませてListCountを取得 21 秒
|