GETDIR

指定したディレクトリのファイル一覧を取得します。

構文
GETDIR( ディレクトリ, [ファイル指定, 不可視ファイルフラグ, 取得順番] )
引数
ディレクトリ
ファイル名の取得のディレクトリ
ファイル指定
ワイルドカード(*, ?)によるファイル名指定
"\"を指定するとディレクトリ名の取得
不可視ファイルフラグ
TRUE
不可視ファイルも含める
FALSE
含めない(デフォルト)
取得順番
ファイル並び
0
ファイル名(デフォルト)
1
サイズ
2
作成日
3
更新日
4
アクセス日
戻値

取得した数を返す (For In 構文にて指定された場合は各要素を返す)

取得した情報は配列変数の GETDIR_FILES[ ] に格納される (配列はゼロから)

ファイル指定

ワイルドカードを使うことによりファイルを絞ることができます。

文字 意味
* 0文字以上の任意の文字列
? 任意の1文字

Excel(*.xls、*.xlsx、*.xlsm)の場合は「*.xls*」と指定します。

あまり正確に機能してなさそうなので、ファイルを削除するときとかは一度ファイル名を出力して確認した方が良いです。

プログラム実行例

不可視ファイルの数を取得する

CONST ssfDesktop = 0

DIM Shell = CREATEOLEOBJ("Shell.Application")
DIM Folder = Shell.NameSpace(ssfDesktop)
DIM path = Folder.Self.Path

DIM num[1]
GETDIR(path)
num[0] = LENGTH(GETDIR_FILES)
GETDIR(path,, TRUE)
num[1] = LENGTH(GETDIR_FILES)

PRINT num[1] - num[0]
  1. script.function.CREATEOLEOBJ(3)
  2. com.Shell.NameSpace(4)
  3. script.function.GETDIR(8,10)
  4. script.function.LENGTH(9,11)

デスクトップにあるフォルダ一覧を取得

CONST ssfDesktop = 0

DIM Shell = CREATEOLEOBJ("Shell.Application")
DIM Folder = Shell.NameSpace(ssfDesktop)
DIM path = Folder.Self.Path

GETDIR(path, "\")

FOR item IN GETDIR_FILES
	PRINT item
NEXT
  1. script.function.CREATEOLEOBJ(3)
  2. com.Shell.NameSpace(4)
  3. script.function.GETDIR(7)

デスクトップのファイル名一覧を取得・出力する

CONST ssfDesktop = 0

DIM Shell = CREATEOLEOBJ("Shell.Application")
DIM Folder = Shell.NameSpace(ssfDesktop)

PRINT "ファイルの数<#TAB>" + GETDIR(Folder.Self.Path)
PRINT "----------"

FOR Item IN GETDIR_FILES
	PRINT Item
NEXT
  1. script.function.GETDIR(6)