-   
- Option Explicit 
- Private Const INVALID_HANDLE_VALUE = -1 
- Private Type FILETIME 
-     dwLowDateTime As Long 
-     dwHighDateTime As Long 
- End Type 
- Private Type WIN32_FIND_DATA 
-     dwFileAttributes As Long 
-     ftCreationTime As FILETIME 
-     ftLastAccessTime As FILETIME 
-     ftLastWriteTime As FILETIME 
-     nFileSizeHigh As Long 
-     nFileSizeLow As Long 
-     dwReserved0 As Long 
-     dwReserved1 As Long 
-     cFileName As String * MAX_PATH 
-     cAlternate As String * 14 
- End Type 
- Private Declare Function FindFirstFile Lib "Kernel32.dll" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long 
- Private Declare Function FindClose Lib "Kernel32.dll" (ByVal hFindFile As Long) As Long 
-   
- Public Function GetFileSizeKb(ByVal File As String) As Double 
-     Dim lngFile As Long 
-     Dim f As WIN32_FIND_DATA 
-     lngFile = FindFirstFile(File & Chr(0), f) 
-     If lngFile = INVALID_HANDLE_VALUE Then Exit Function 
-     GetFileSizeKb = f.nFileSizeLow / 1024 
-     FindClose (lngFile) 
- End Function 
-   
-