• ベストアンサー

最新フォルダの取得

C:\ Cフォルダの下に、1A、2A、3A というフォルダがあり、その3つの中で最新のもの(一番最近作成されたもの)を取得する方法を教えていただけませんか? フォルダー数は可変で、フォルダー数、名前の取得は何とかできたのですが、それがいつ作られたのか、どれが最新か、という操作ができず困っています。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

環境によって答えが違ってきますので、VBのバージョンぐらいは明記してくださいね。 VB6まで、またはVBAだと、FileSystemObjectを使って、Folderオブジェクトの SubFoldersプロパティを参照してフォルダ一覧を取得し、各サブフォルダの DateCreatedプロパティを取得して、比較すれば処理できると思います。 VB.NETなら、System.IO.Directory.GetDirectoriesでサブフォルダを取得し、 各サブフォルダの作成日時をSystem.IO.Directory.GetCreationTimeで 取得すればいいと思います。 ちなみに、下のURLは、私が今回検索したページの1つです。 FileSystemObjectを使うなら役に立つかも。

参考URL:
http://www.vacant-eyes.jp/Tips/twsh/060.aspx
winniegy
質問者

お礼

K-Sogacchiさま ありがとうございました! なんとかできました。 環境の明記、今後気をつけます。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • フォルダ内のフォルダ数の制限ってありますか?

    教えてください。 フォルダ内に作成できるフォルダ数に制限はあるのですか? ルートディレクトリにファイルを作成できる数には制限があるというのは調べてわかりました。 例えば、 C:\A\1\ CドライブにAというフォルダを作成します。 そのAというフォルダの中に1というフォルダを作成します。 このAというフォルダの中に何個のフォルダを作成できるのでしょうか? 1から始まってどこまでできるのでしょうか? 知っている方いらっしゃいましたら教えてください。

  • サブフォルダを含めた最新のエクセルを取得したいです

    VBA初心者です。 ①サブフォルダを含めた最新更新日のエクセルファイルを取得したいです。 ②そして、最新更新日のエクセルファイルは、そのエクセルが入っていたフォルダの名前に変更し、別フォルダへコピーしたいです。 お手数ですが、ご教授ください。

  • VBAであるフォルダにあるフォルダを取得

    VBA初心者です。 フォルダの階層を下に掘ってパスの文字列を生成したいのですが あるフォルダの中にある全てのフォルダ名前を取得するにはどうしたらいいのですか?

  • フォルダー内の最新更新エクセルファイル

    勤怠処理を行っています。 記録の方法は、各課や係別にフォルダーがあって、その中に社員が月毎に勤務時間をエクセルファイルで記録しています。 ¥**¥A部¥B課¥C係¥社員A¥12月.xls と言うような感じで構成されています。A部より下層はフォルダーが複数存在します。 この状態で、A部のフォルダーをユーザーが指定すると、下層のフォルダーを全て検索し、最下層の最新更新日の.xlsのフルパスとファイル名を取得して、それをシート上に表示したいのです。 フォルダー内全てのファイルの最終更新日を取得する方法は検索すると見つかります。それをいじって日付を比較して最新日を抜き出せばいいのでしょうが、コマンドの意味が判っていないので上手く行きません。 完全に「教えて君」で申し訳有りませんが、宜しくお願い致します。

  • VBSでフォルダ内の最新のファイルを開く方法

    よろしくおねがいします。 あるフォルダ(固定)の中にある、.hogeというファイルのうち、最新のファイルを既定のプログラムで開きたいと考えています。 このフォルダには、.hoge 以外のファイルも混在しています。 既定のプログラムで開くには、 Dim WSH As Object Set WSH = CreateObject("WScript.Shell") WSH.Run """C:\開きたいフォルダ\最新のファイル.hoge""" このように書くことで動作確認できました。 1) フォルダ内で .hoge を列挙して 2) その中で一番更新日時が新しいファイルの名前を取得 この2点ができれば完成なのですが、どうすればよいかわかりません。 具体的な書き方を教えていただけますでしょうか。

  • バッチファイルで指定フォルダ以下のフォルダ名を表示

    バッチファイルで指定フォルダ以下のフォルダ名を表示したいのですが、うまく表示出来ません どなたか詳しい方知恵をお貸しいただけませんでしょうか search.batファイルは以下です @echo off for %%a in (C:\testbat\test\*) do set X=%%a&call :sub goto :eof :sub set Y=%X:~0,8% echo "%Y%" 検索したいフォルダ構成は以下のとおりです c:\testbat ここにsearch.batを置きます c:\testbat\testの中にあるフォルダの名前を取得したいです(実際にはフォルダ数は100個ほど) その各フォルダ名の8文字目までを取得して表示させようとしていま す どなたか知恵のある方、このバッチの方法でなくとも、testフォルダの中に格納されているフォルダの名前を取得する方法をご存知の方いらっしゃいましたら是非ご回答お願いいたします どうぞよろしくお願いいたします

  • Thunderbird フォルダー内最新を表示?

    Thunderbird 2.0.0を使用してローカルフォルダー直下に 何個かのフォルダーを作成して受信メールを分類しております。 フォルダー内で最新のメールが下に来るようにしてあるのですが あるフォルダーは開いたときは受信トレイのスクロールバーが 下にあり最新のメールがすぐに見れるのですが、 特定のフィルダーを開いたときに スクロールバーが受信トレイの上にあり一番古いメールが表示され 毎回スクロールバーを下に持っていかなくてはいけません。 どの設定が違うのかわかりません。 どなたか教えていただけないでしょうか??

  • Vistaのフォルダ操作でいちいち「最新の情報に更新」が必要

    Windows Vista Ultimateを使っているのですが、フォルダ操作がWindows XPと比べてとても面倒で困っています。例えば、ある空フォルダを開いてその中に新たなフォルダを作成するために、「右クリック-新規作成-フォルダ(F)」という操作をやっても空フォルダ内に「新しいフォルダ」は現れず、わざわざ「表示-最新の情報に更新」をやる必要があります。XPを使っていた時はこんな面倒な事はありませんでした。また、例えば、あるフォルダ内のファイルを別のフォルダに「右クリックでドラッグ-ショートカットをここに作成」という操作をやった場合も同様で、作成したはずのショートカットは表示されず、わざわざ「表示-最新の情報に更新」をやってはじめて表示されます。この症状はなんとかならないものでしょうか?Windows Vistaを使っている以上しょうがないとあきらめるしかないでしょうか?是非アドバイスください。

  • VBScriptでフォルダ内の全ファイル名取得

    こんにちは VBScriptでツールを作成しています。 フォルダA内の全ファイルをリネームして 別フォルダB内に同じファイル名があればリネームして フォルダA内のファイルをコピーしたいのですが 一度にフォルダ内の全ファイル名を取得する方法が分かりません。 なにかいい方法は無いでしょうか?よろしくお願いします。

  • フォルダ内にあるファイル名を取得したい

    cを利用して、指定したフォルダの中にある全てのファイルの名前を取得するプログラムを作りたいのですが、適した関数がわかりません。 指定するフォルダはあらかじめ決めうちで、その中には.txtのファイルのみを格納します。 どなたか教えてください。できれば自分で作りたいのでヒントをください。お願いします。 VisualC++.netを使っています。OSはXPです。