勉強会は続く
それからしばらくの間、毎日のように星くんと岬さんは、八木くんのマンションに通いました。
そして八木くんを先生に、二人は着実にVBAのスキルを身につけていったのでした。
「八木さん。ここなんですけど…」
「どれどれ…」
岬さんが、八木くんに質問します。
これももう、星くんには見慣れた光景になっていました。
「(…よかった。最初、あまり乗り気でなかった岬さんも、
今では積極的に勉強会に参加するようになってくれたし…。
八木ともずいぶん、仲良くなったみたいだ)」
星くんは、ほほえみを浮かべながら二人を見つめます。
「…ああ、Dir関数か。
ファイルの存在を確認できる、便利な関数だよ」
「このコードなんですけど…。
どうしてこれで、条件にあてはまるすべてのブックを調べることができるのか、
よくわかんないんですけど?」
「C:\Sample」フォルダに「Book1.xlsx」「Book2.xlsx」「Book3.xlsx」が存在していたとします。
フォルダ内に存在するすべてのブックを調べるには、次のようにします。
Sub Sample13()
Dim buf As String
buf = Dir("C:\Sample\*.xlsx")
Do While buf <> ""
MsgBox buf
buf = Dir()
Loop
End Sub
< スタンダード公式テキスト P230 >
「Dir関数の引数が"C:\Sample\*.xlsx"だから、まずCドライブのSampleフォルダが対象になるんですよね。
そしてワイルドカードを使って"*.xlsx"と指定しているから、
拡張子がxlsxのすべてのブックの存在を調べるんですよね?」
「そのとおり。
bufには、ワイルドカードに一致したファイル名が返るよ」
「…それはわかるんですが、
Do…Loopステートメントの中の"buf = Dir()"、これって何をしてるんですか?」