ループの後(その2)
その2は、For Each...Next ステートメントです。
こちらは、コレクションに対するループの場合は Nothing に、Variant配列に対するループの場合は Empty になります。
ループを抜けた後のことは、考えなくていいよってことです。
↑その1と言っていることが逆 (-_-;)
って、これだけじゃ寂しいので、一応、テスト用コードも書いておきます。
Sub Macro1() Dim i As Range For Each i In Range("A1:A3") Debug.Print i.Address Next i Debug.Print TypeName(i), "ループ後" End Sub Sub Macro2() Dim i As Variant For Each i In Array(1, 2, 3) Debug.Print i Next i Debug.Print TypeName(i), "ループ後" End Sub
たまにループの後で Nothing をセットしているコードを見かけますが、無駄なものを書いているなぁという印象を受けます。
※.Excel World の 2007年3月29日 01:39 の日記をコピーしています。
http://excel.sns.fc2.com/excel/