セルのスタイルの参照はStylesコレクションで行う

Excelのスタイルはブックに対して行います。そのためスタイルの参照はブック単位になります。

スタイルを参照する場合はWorkbookオブジェクトのStylesコレクションを利用します。

ブックに登録されているスタイルは全てStylesコレクションに格納されています。

ブックに登録されていないスタイルを参照しようとした場合は「実行時エラー’9′: インデックスが有効範囲にありません。」のエラーになります。

構文

Workbook スタイルを参照するブックを指定します。通常はActiveWorkbookを指定することが多いと思います。
Styles WorkbookオブジェクトのプロパティであるStylesコレクションを指定します。
Name <スタイル名指定時>

参照するスタイルの名前を文字列で「Styles(“test”)」のように指定します。

Index <Index指定時>

参照するスタイルのIDを指定します。IDからどのスタイルなのかは分からないため使うことはまずないと思われます。

戻り値 参照したスタイルのStyleクラスオブジェクトを返します。

存在するスタイルを参照した場合はそのスタイルのStyleオブジェクトを返しますが、存在しないスタイルの場合は「実行時エラー’9′: インデックスが有効範囲にありません。」になります。

On Error Resume Nextなどのエラー対応をしている場合はNothingが返却されます。

 

サンプルコード

ブックに登録されている全てのスタイルを参照するサンプルです。参照個所を黄色にしています。

For Each、For、Doの3種類のループによる書き方になります。

 

コード説明

スタイルの参照自体は「Workbook.Styles(xxx)」と書くだけです。

参照結果の戻り値をStyleクラス型の変数に代入する場合は14行目や26行目のようにSetステートメントを使って代入します。