Dir関数の戻り値の "." と ".." の意味は?

Question 039k 拙著「組み方講座」 Previous Next
135ページ [1-6-10図] ◆ 環境・・ Excel 2002 & WindowsXP
詳細は こちら
こんにちは。ネットで探してみましたが、分からないので質問いたします。
取得した名前が "." でも ".." でもないとは、どういうことでしょうか。この場合の "." や ".." は何を表しているのでしょうか?
どうぞ宜しくお願いいたします。
Answer   Copyright (C) 2004.6.19 永井善王
拙著「Excel VBA マクロ組み方講座」本をご購入いただき、ありがとうございます。

135ページは、第1章6「指定フォルダ内の全てのブックを順に開く」という学習で、指定したフォルダの中に「サブフォルダがあればそのフォルダ名とパスを取得する」ための下図のマクロ、そして、ご質問は角丸四角形で囲んでおいた "." と ".." の意味ですね。

5行目の If文は、変数「取得名」の内容を調べています。その意味はコメント(ピンクとオレンジの下線部分)に書いてあるとおり、「現在フォルダか親フォルダでなければ」ですが、もう少し補足しますと、

変数「取得名」には、上から3行目 および 下から3行目の Dir関数でフォルダの名前が取得されます。
Dir関数については 136ページで解説していますので、それをご覧いただくとして、この場合は指定されたフォルダに関連する全てのフォルダの名前を返してくれます。
ただし、指定したフォルダと、その親フォルダについては、"." または ".." が返り不要ですから、If文で跳ね除けています。

 

Excel VBA Macro