Countメソッドの最大値について


シン  2004-10-24 13:27:40  No: 86226  IP: [192.*.*.*]

Countメソッドにてカウント出来る最大値を
ご存知の方いらっしゃいますか?

下記例で、tempフォルダ内のファイル数を
カウントしているんですが、
Long型の最大値に達する前にオーバーフロー
してしまいます。(戻り値を返すと落ちます)
Countメソッドの限界値ってあるのでしょうか?

詳しい方、ぜひアドバイスを頂けないでしょうか。
宜しくお願い致します。

<例>
Private Sub Countbutton_Click()

On Error GoTo ErrHandler

Dim longCount As Long

DATA_PASS = "C:\temp"

longCount = GetFileCount(DATA_PASS)

Exit Sub

'エラーハンドラー
ErrHandler:
ret = MsgBox(Err.Description, vbCritical, "警告")
ret = MsgBox("予期せぬエラー発生", vbCritical, "警告")

End Sub



Function GetFileCount(CountFolder)

Dim FileCountCheck As Object 
Dim FileCountCheck_Folder As Object 
Dim FileCountCheck_FolderInfo As Object 

Set FileCountCheck = CreateObject("Scripting.FileSystemObject")
Set FileCountCheck_Folder = FileCountCheck.GetFolder(CountFolder)
Set FileCountCheck_FolderInfo = FileCountCheck_Folder.Files

'ファイル数チェック
GetFileCount = FileCountCheck_FolderInfo.Count

End Function

編集 削除
raki  URL  2004-10-25 11:28:26  No: 86227  IP: [192.*.*.*]

Function GetFileCount(CountFolder)

Function GetFileCount(CountFolder) As Long
としてみてください。

GetFileCount = FileCountCheck_FolderInfo.Count
ここでエラーが起きているとすれば、それが原因かもしれません。

編集 削除
シン  2004-10-25 13:30:38  No: 86228  IP: [192.*.*.*]

rakiさんご指摘事項有難う御座います。

Function GetFileCount(CountFolder) As Long

という書き方が出来るんですか!
初心者なので知りませんでした。
試してみます。

編集 削除
java.lang.Nullpo  2004-10-25 13:37:23  No: 86229  IP: [192.*.*.*]

> Function GetFileCount(CountFolder) As Long
> という書き方が出来るんですか!

いや、しなきゃダメなんだよ。

編集 削除