フォルダ内のアイテムに関する詳細を取得します。取得した文字列には制御文字が含まれる場合があるので、この関数で得られた文字列を操作するときは注意。
- 構文
- Folder.GetDetailsOf( vItem, iColumn )
- 引数
- vItem (FolderItem オブジェクト)省略可
- 情報を取得する項目。これはFolderItemオブジェクトである必要があります。
- iColumn (Variant)省略可
- 取得する情報を指定するInteger値。アイテムに利用できる情報は、アイテムが表示されているフォルダによって異なります。この値は、シェルビューに表示されるゼロベースの列番号に対応します。
- 戻り値
- iColumnに指定された情報
Folder オブジェクトを返すメソッド・プロパティ
- Shell.BrowseForFolder メソッド
- フォルダ選択のダイアログボックスを表示し、選択したフォルダのFolderオブジェクトを返す。
- Folder.GetDetailsOf メソッド
- FolderItemオブジェクトがフォルダの場合、Folder オブジェクトを返します。
関連するメソッド・プロパティ
iColumn
以下のプログラムを実行すると、指定したFolderオブジェクトで使用できるiColumnの項目を連想配列に格納します。
項目名から数値を取得できます。
以下のプログラムで項目名が取得できます。
よって連想配列に以下のようにiColumn[項目名] = 値の形式で格納されているため、項目名を指定すれば対応する値が取得できることになります。
名前から対応する数値を取得するには、以下のように記述します。この場合0が返ります。
以下は項目名から数値、数値から項目名を取得することができます。
0に対応する項目名を取得します。この場合名前が返ります。
項目一覧
Shell.NameSpaceで引数に0〜50の値を指定したときに出てきた項目の一覧です。
| 1 | 35mm 焦点距離 | BCC | BCC アドレス | CC | CC アドレス | EXIF バージョン | FAX 番号 (会社) | IM アドレス | IP アドレス | ISO 速度 |
|---|---|---|---|---|---|---|---|---|---|---|
| 2 | MAC アドレス | SAP | TTY/TTD 電話 | To do タイトル | URL | Web ページ | この回のタイトル | ほかの市区町村 | アカウント名 | アクセス日時 |
| 3 | アラーム時刻 | アルバム | アルバム ID | アルバム アーティストで並べ替え | アルバムで並べ替え | アルバムのアーティスト | アーカイブ日時 | イニシャル | イニシャル キー | イベント |
| 4 | エピソード番号 | エンコード方式 | オフラインの状態 | オンライン | カテゴリ | カメラのモデル | カメラの製造元 | クライアント ID | クラス | グループ |
| 5 | コメント | コレクション | コンテンツの作成日時 | コンパイルの一部 | コンピューター | コールバック番号 | サイズ | サフィックス | サブタイトル | サポートのリンク |
| 6 | シーズン番号 | ジャンル | ステレオ | ステーション コール サイン | ストア | スライド | セットのパート | ソース | タイトル | タイトルで並べ替え |
| 7 | タグ | チャンネル番号 | テレックス | ディスク | ディレクター | デザイナー/メーカー | デザイン対象 | デバイス カテゴリ | デバイス名 | データ速度 |
| 8 | トラック番号 | ドキュメント | ドキュメント ID | ニックネーム | ネットワークのカテゴリ | ネットワークの場所 | パス | ビット レート | ビットの深さ | ビデオの向き |
| 9 | ビデオ圧縮 | ビート数/分 | ファイル システム | ファイル バージョン | ファイルの所有権 | ファイルの説明 | ファイル名 | ファイル拡張子 | ファイル数 | ファミリ |
| 10 | フォルダー | フォルダーのパス | フォルダー名 | フォント スタイル | フォント バージョン | フォント ファイル名 | フォントの種類 | フォント埋め込み可能 | フラグの有無 | フラグの状態 |
| 11 | フラグの色 | フラッシュ モード | フレンドリ名 | フレーム幅 | フレーム率 | フレーム高 | プライマリ電子メール | プログラムのモード | プログラムの説明 | プログラム名 |
| 12 | プロジェクト | プロデューサー | ペアリング済み | ページ数 | ホスト アドレス | ホワイト バランス | ポケットベル | マスター キーワード | ミドル ネーム | メディアの作成日時 |
| 13 | モデル | ユーザー Web URL | ラベル | リソース | リリース日 | リンクの状態 | リンク先 | レンズ メーカー | レンズ モデル | ローカル コンピューター |
| 14 | ワイヤレス モード | ワークグループ | 事業部 | 人物 | 仕事の所有者 | 他の国/地域 | 他の番地 | 他の私書箱 | 他の郵便番号 | 他の都道府県 |
| 15 | 件名 | 任意出席者 | 任意出席者アドレス | 会社 | 会社のホーム ページ | 会社代表電話 | 会社電話 | 会話 ID | 会議の状態 | 住所 (その他) |
| 16 | 住所 (会社) | 住所 (自宅) | 住所 (郵送先) | 作成日時 | 作成者 | 作曲者 | 作曲者で並べ替え | 作者 | 使用率 | 使用領域 |
| 17 | 保護 | 保護者による制限 | 保護者による制限の理由 | 優先度 | 元の場所 | 光源 | 共同作成者 | 共有 | 共有の種類 | 共有ユーザー |
| 18 | 共有中 | 共有状態 | 内容の状態 | 内容の種類 | 再帰 | 再放映 | 分類 | 分類項目 | 利用可能性 | 削除 |
| 19 | 削除日時 | 前回保存日時 | 前回印刷日 | 勤務先所在地 | 単語数 | 参加アーティスト | 参加アーティストで並べ替え | 参加者 | 取得日時 | 受信日時 |
| 20 | 可用性の状態 | 合計サイズ | 名 | 名2 | 名前 | 向き | 商標 | 国/地域 | 国/地域 (会社) | 国/地域 (自宅) |
| 21 | 垂直方向の解像度 | 場所 | 場所ごと | 大きさ | 姓 | 子供 | 字幕 | 完了 | 完了日 | 宛先 |
| 22 | 対象の距離 | 局名 | 属性 | 履歴の種類 | 差出人 | 市 (会社) | 市 (自宅) | 市区町村 (郵送先) | 幅 | 年 |
| 23 | 彩度 | 役職 | 必須出席者 | 必須出席者アドレス | 性別 | 所有者 | 抜粋 | 指揮者 | 探索方法 | 接続 |
| 24 | 接続済み | 携帯電話 | 撮影日時 | 放送日 | 日付時刻 | 暗号化の状態 | 更新日時 | 最大絞り | 最終表示日 | 期間 |
| 25 | 期限 | 未完了 | 概要 | 氏名 | 水平方向の解像度 | 添付 | 添付ファイル | 添付ファイルの有無 | 測光モード | 焦点距離 |
| 26 | 状態 | 球形 | 番地 (会社) | 番地 (自宅) | 番地 (郵送先) | 発行元 | 私書箱 (会社) | 私書箱 (自宅) | 私書箱 (郵送先) | 秘密度 |
| 27 | 秘書の名前 | 秘書の電話 | 種類 | 空き時間情報 | 空き領域 | 終了日 | 終了済 | 経費情報 | 絞り値 | 継続時間 |
| 28 | 総ビット レート | 総ファイル サイズ | 総編集時間 | 職業 | 肩書き | 自動要約 | 自動車電話 | 自宅 FAX | 自宅電話 | 色 |
| 29 | 著作権 | 表示/非表示 | 表題2 | 製作者 | 製品バージョン | 製品名 | 製造元 | 言語 | 記念日 | 記録時間 |
| 30 | 評価 | 認識された種類 | 誕生日 | 説明 | 課金情報 | 趣味 | 送信元アドレス | 送信先アドレス | 送信日時 | 送信者アドレス |
| 31 | 送信者名 | 通常の電話 | 連絡先の名 | 進捗状況 | 部署 | 郵便番号 (会社) | 郵便番号 (自宅) | 郵便番号 (郵送先) | 都道府県 | 都道府県 (会社) |
| 32 | 都道府県 (自宅) | 配偶者 | 重要度 | 長さ | 開催者住所 | 開催者名 | 開始日 | 開封の状態 | 関連度 | 雰囲気 |
| 33 | 電子メール アドレス | 電子メール2 | 電子メール3 | 電子メールの一覧 | 電子メール表示名 | 電話番号 | 電話番号またはホスト アドレス | 露出プログラム | 露出時間 | 露出補正 |
| 34 | 項目の種類 | 高さ |
制御文字
GetDetailsOfメソッドで取得した文字列には制御文字が含まれていることがあります。制御文字が含まれているかどうかは文字数を出力することで確認することができます。
例えば撮影日時を取得した際の文字列2021/05/29 13:16の文字数は1文字ずつ数えていくと16文字ですが、LENGTH関数では21と出力されます。つまり21-16で5文字分の制御文字が含まれているとこがわかります。
文字列を1文字ずつASC関数で調べると以下のように8206、8207と目に見えない文字が存在していることがわかります。32は半角スペースです。
- 結果
文字列から制御文字を取り除くためには、以下のようにREPLACE関数で置換します。配列には削除したい制御文字を格納。
プログラム実行例
写真の撮影日時毎に枚数を取得
選択したフォルダにある写真の撮影日時を取得・カウントします。
プロパティの項目を取得
デスクトップのファイル一覧
フォルダ内のファイルを更新日時でソートする
写真を撮影日時毎にフォルダ分けする
フォルダ内の音声ファイルをすべて再生
指定フォルダ内の曲をトラック番号順で再生
デフォルトプリンターを取得
指定したフォルダの曲名と合計時間を出力
指定したフォルダの動画の合計時間を求める
関連記事
- Shell.Explore メソッド
- 指定したディレクトリをエクスプローラで開きます。
- Folder オブジェクト
- シェルフォルダを表します。
- Folder.CopyHere メソッド (Shell)
- 1つまたは複数のアイテムをフォルダにコピーします。
- Folder.MoveHere メソッド (Shell)
- 1つまたは複数のアイテムをこのフォルダに移動します。
- Folder.ParseName メソッド (Shell)
- 指定されたアイテムのFolderItem オブジェクトを作成して返します。
- Folder.ParentFolder プロパティ (Shell)
- 指定したフォルダの親のFolder オブジェクトを返します。
- FileSystemObject オブジェクト
- Folder オブジェクト
- Folder オブジェクト
- フォルダのすべてのプロパティにアクセスできます。
- Folder.Drive プロパティ (FSO)
- 指定したフォルダがあるドライブのドライブ文字を返します。





