- ベストアンサー
VBAの「Dir」コマンドを使用してフォルダ名変換を行ったのですが。。
OS:Windows2000 VBA:Excel2003 任意のフォルダを指定し、そのフォルダ内のフォルダ名を全て変換するものを作成しようとしました。 問題点は、「Dir」関数を使用して、任意のフォルダ内のディレクトリを取得する時に、 strFName = Dir("C:\test\", vbDirectory) 上記のコードを実行すると、strFNameには「.」が入ってます。 strFName = Dir() を繰り返し行うと、strFNameには以下 「.」→「..」→「test01」→「test02」… となります。 C:\test\フォルダには「test01」以降のフォルダは存在するのですが、「.」及び「..」は見当たりません。 コマンドプロンプトで、 C:\test>dir で確認すると、「.」「..」が存在します。 しかし、 C:\test>tree では「.」「..」は見当たりません。 このDir("C:\test\", vbDirectory)で取れてくる「.」「..」とは一体何なのでしょうか? カテゴリ違い(Windows OS かも…)の質問かもしれませんが、ご存知の方がいらっしゃいましたら、よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>カテゴリ違い(Windows OS かも…)の質問かもしれませんが そうですね。OSの仕様(ディレクトリを意味する略号)です。 「.」→ カレントフォルダ(カレントディレクトリ):現在位置のフォルダ名をさします。 「..」→ 一つ上(親)のフォルダ(ディレクトリ)をさします。 http://www.denen.org/article/d20000202.xhtml
その他の回答 (1)
- j_nishiz
- ベストアンサー率26% (183/697)
「.」はカレントディレクトリを表し、 「..」は一つ上のディレクトリを表します。 コマンドプロンプトで c:\test\test01>cd .. と入れると c:\test\> となります。
お礼
早速のご回答ありがとうございます。 DOSの仕様のようですね^^;
お礼
早速のご回答ありがとうございます。 リンクを参考にさせて頂きました。 仕様ということですので、それを考慮したコーディングを行おうと思います。 >>カテゴリ違い(Windows OS かも…)の質問かもしれませんが >そうですね。OSの仕様(ディレクトリを意味する略号)です。 hana-hana3さんもj_nishizさんもご丁寧な回答ありがとうございました。