スクリプトのカウントアップ方法について
下記スクリプトの、
If CInt(i) < objFolderItems.Count Then
から最後から2行目までのカウンタ カウントアップ処理を直したいです。
iがカウンタです。
ここで、フォルダから取り出した物が.CSVファイルであればカウンタをカウントアップし、否の場合はカウントアップしないようにスクリプトを改造したいが、どう直せばよいでしょうか?
どうも現状は、フォルダから取り出した物が.CSVファイルか否かに関わらず、すべてカウントアップするようです。
---<ここから>ーー
Public objApl
Public objFolder
Public objFolderItems
Public objItem
Public folderPath
Public i
folderPath = !フォルダ名!
'シェルアプリケーションオブジェクトを作成します
Set objApl = CreateObject("Shell.Application")
'指定フォルダのオブジェクトを作成します
Set objFolder = objApl.NameSpace(folderPath)
'フォルダオブジェクトから、入っているファイルやフォルダの全情報を取得します
Set objFolderItems = objFolder.Items()
'ファイルシステムオブジェクトを作成します。
Set objFileSys = CreateObject("Scripting.FileSystemObject")
'変数値を取得
i = !カウンタ!
If CInt(i) < objFolderItems.Count Then
'ファイルやフォルダの情報を1コ取り出します
Set objItem = objFolderItems.Item(CInt(i))
'取り出した物が.CSVファイルか否かを判定
SetUMSVariable $ファイル名$, objItem.path
'取り出した物が.CSVファイルであれば、種別にTrueを設定
If UCase(objFileSys.GetExtensionName(objItem.path)) = "CSV" Then
SetUMSVariable $種別$, "True"
i = i + 1
MsgBox i
'MsgBox 種別
Else
'取り出した物が.CSVファイル以外であれば、種別にFalseを設定
SetUMSVariable $種別$, "False"
SetUMSVariable $ファイル名$, ""
End If
Else
Err.Raise 1, "", "フォルダもしくはインデックスの指定に誤りがあります。"
End If
Set objItem = Nothing
---<ここまで>ーー