ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Finding byte info for files and folders (https://www.excelbanter.com/excel-programming/314960-finding-byte-info-files-folders.html)

Todd huttenstine

Finding byte info for files and folders
 
Hey guys

How do I find the byte info for files and folders?

The reason I want to do this is because i have a directory
C:\test

Files in this directory can be added and/or changed. How
would I check the size of that directory? Also how would
I check the size of a file called "ABC.xls" in that same
directory?


Thanks
Todd Huttenstine

keepITcool

Finding byte info for files and folders
 

vba.FileLen(strPath) gives length in bytes
the prefix VBA is optional but included for clarity.


FirstMethod EXCLUDES the subdirs (pure VBA)
Second INCLUDES the subdirs (latebound Scripting Runtime)

Both return bytes.
for KB : result \ 1024
for MB : result \ 1024 ^ 2


Function DirSize&(Optional sDir$, Optional sMask$ = "*.*")
Dim n&, sFile$
If sDir = vbNullString Then
sDir = VBA.CurDir$
End If
If VBA.Right$(sDir, 1) < Application.PathSeparator Then
sDir = sDir & Application.PathSeparator
End If

sFile = VBA.Dir$(sDir & sMask)
While sFile < vbNullString
n = n + VBA.FileLen(sFile)
sFile = VBA.Dir$()
Wend

DirSize = n

End Function

Function DirSizeFS&(Optional sDir$)
'INCLUDES SUBFOLDERSIZE
'http://msdn.microsoft.com/library/en-us/script56/html/jsprosize.asp
If sDir = vbNullString Then
sDir = VBA.CurDir$
End If
With CreateObject("scripting.filesystemobject")
If .FolderExists(sDir) Then
DirSizeFS = .GetFolder(sDir).Size
End If
End With

End Function


keepITcool

< email : keepitcool chello nl (with @ and .)
< homepage: http://members.chello.nl/keepitcool


"Todd Huttenstine" wrote:

Hey guys

How do I find the byte info for files and folders?

The reason I want to do this is because i have a directory
C:\test

Files in this directory can be added and/or changed. How
would I check the size of that directory? Also how would
I check the size of a file called "ABC.xls" in that same
directory?


Thanks
Todd Huttenstine




All times are GMT +1. The time now is 11:37 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com