GETDIRゲットディレクトリー関数

本ページには広告が含まれています。

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

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

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

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

引数

取得順番

ファイル並びは自然順(昇順)で取得されます。ファイル名は五十音順、サイズは小さい順、日時は古い順となります。

配列変数

配列変数に格納された要素の出力方法を色々書いておきます。

配列変数に格納された要素は自然順(昇順)で並んでいます。

LENGTH関数 (スクリプト関数)で要素数を取得し、0〜(要素数-1)まで<ruby>FOR-TO文<rt></rt></ruby>で回す。昇順です。

UWSC

RESIZE関数で配列の上限値を取得し、<ruby>FOR-TO文<rt></rt></ruby>で先頭から昇順で出力します。

UWSC

RESIZE関数で要素数を取得し、<ruby>FOR-TO文<rt></rt></ruby>で後ろから回すことで、降順で出力します。

UWSC

<ruby>FOR-IN文<rt></rt></ruby>で要素を昇順で出力します。

UWSC

GETDIR関数 (自作関数)で配列変数の中身を降順にする方法もあります。

UWSC

ファイル指定

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

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

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

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

取得順番

ファイル名 昇順

UWSC

ファイル名 降順

UWSC

サイズ 昇順

UWSC

サイズ 降順

UWSC

作成日時 昇順

UWSC

作成日時 降順

UWSC

更新日時 昇順

UWSC

更新日時 降順

UWSC

アクセス日時 昇順

UWSC

アクセス日時 降順

UWSC

複数の条件指定

GETDIRを繰り返し実行し、配列に結合していきます。以下は拡張子が".txt"か".js"のファイル一覧を昇順で取得します。

UWSC

使い方

デスクトップにある作成日が一番古いファイルを取得します。

UWSC

デスクトップにある作成日が一番新しいファイルを取得します。

UWSC

プログラム実行例

指定フォルダのJPEGファイル名を出力

D:\Pictures\にあるファイル名が.jpgで終わる(JPEG画像)のファイル名を出力します。

UWSC
使用関数

指定フォルダにあるディレクトリを出力

D:\Desktop\にあるディレクトリ名を出力します。

UWSC
使用関数

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

UWSC
使用関数

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

UWSC
使用関数

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

UWSC
使用関数

関連記事

File.Type プロパティ (FSO)
指定したファイルの種類を返します。
DELETEFILE関数 (スクリプト関数)
テキストファイルを削除します。
FCLOSE関数 (スクリプト関数)
テキストファイルを閉じます。
FDELLINE関数 (スクリプト関数)
テキストファイルの指定行を削除します。
FGET関数 (スクリプト関数)
テキストファイルの読み込みを行います。
FOPEN関数 (スクリプト関数)
テキストファイルを開き、ファイルIDを取得します。
FPUT関数 (スクリプト関数)
テキストファイルの書き込みを行います。
Folder.CopyHere メソッド (Shell)
1つまたは複数のアイテムをフォルダにコピーします。
Folder.MoveHere メソッド (Shell)
1つまたは複数のアイテムをこのフォルダに移動します。
FileSystemObject オブジェクト