
動画で楽にパソコンが身につく方法はこちら>>
すべてのワークシートやすべてのブックなどに、まとめて同じ処理を行いたい場合には
For Each…Next文を使用します。
[書式]
For Each オブジェクト変数 In コレクション
処理
Next
In コレクションの部分で処理の対象となるシートやブックの集まりである
シートコレクションやブックコレクションを指定します。
そしてそれらのコレクションの中の個々のシートやブックがオブジェクト変数に
一つずつ代入されて順番に処理が行われます。
[例]
For Each ワークシート In Worksheets
ワークシート.Tab.ColorIndex = 20
Next
For Each ワークブック In Workbooks
ワークブック.Save
Next
[サンプルC110_1]
Sub C110_1()
Dim ワークシート As Worksheet ①
For Each ワークシート In Worksheets ②
ワークシート.Tab.ColorIndex = 20
Next
End Sub
Dim ワークシート As Worksheet ①
Worksheetオブジェクト型の「ワークシート」という名前の変数を宣言しています。
For Each ワークシート In Worksheets ②
ワークシート.Tab.ColorIndex = 20
Next
コレクションにWorksheetsコレクション、変数に①で宣言した「ワークシート」を指定して「For Each Next文」を実行し、すべてのワークシートの見出しに色を設定しています。
[サンプルC110_2]
Sub C110_2()
Dim ワークブック As Workbook
For Each ワークブック In Workbooks
ワークブック.Save
Next
End Sub
Workbooksコレクションを指定し、
For Each Next 文ですべてのワークブックを保存しています。

動画で楽にパソコンが身につく方法はこちら>>