エクセルVBA日本語化で 選択範囲の偶数行を 簡単に配色しよう
序文

はい。
今日は、
- エクセルVBA日本語化で 選択範囲の偶数行を 簡単に配色する
というテーマでお伝えします。
このやり方を覚えたら、
- エクセルVBA日本語化で 選択範囲の奇数行を 簡単に配色する
- エクセルVBA日本語化で 選択範囲の指定行を 簡単に配色する
- エクセルVBA日本語化で 選択範囲の指定列を 簡単に配色する
などにも、応用できます。
エクセル関数日本語化のインストール方法は、以下の記事を参照してください。
なお、ここで紹介するコードは「エクセルVBA日本語化」ver0.11以上が必要です。
下記URLよりダウンロードされてください。
レッスン
まずは、エクセルを起動しましょう。

そして、以下の記事の手順通りに、VBA画面を開きます。
(「ALT」キーを押しながら、「F11」キーを押すと、VBAの画面が開きます。その後、「標準モジュール」というVBAを書くシートを作成します。)

次に、サブルーチン名を入力し、「ENTER」を押し改行します。
1 |
Public Sub 選択範囲の背景色変更オレンジ |
すると、「()」がつき「End Sub」までが自動入力され、サブルーチンの枠が用意されます。
1 2 3 4 |
Public Sub 選択範囲の背景色変更オレンジ() End Sub |
ここでは、「選択範囲の背景色変更オレンジ」というサブルーチンを作っていきます。

次に「g_道具」の後に「.(ピリオド)」を入力し、選択候補から「セル」を選択します。
「g_道具」はすべて手で打つ必要はなく、「g_」まで入力してから「CTRL」キーを押しながら「スペース(空白)」キーを同時に押すことで、「g_道具」と補完されます。
入力が面倒な状況になった際には、「CTRLキー」+「スペースキー」をおしてみると良いでしょう。
うまくいけば、補完候補が表示されますので、入力の手間が省けます。

「セル」を選択した後、再び「.(ピリオド)」を入力し、出てきた選択候補の中から「選択範囲」を選択します。

「選択範囲」の後に「(」(左カッコ)を入力し、選択範囲のオプションを表示します。
オプションには上図のようなものがあり、それぞれ
- 選択範囲内の偶数行
- 選択範囲内の奇数行
- 選択範囲内の偶数列
- 選択範囲内の奇数列
- 選択範囲内の指定ステップ間隔ごとの行
- 選択範囲内の指定ステップ間隔ごとの列
- 指定なし(行、列番号を直接指定するか、選択範囲すべてを対象にする)
などの、選択範囲の絞り込みができます。

「偶数行」を選択してから閉じカッコ「)」を入力し選択範囲のオプションの指定を完了します。
ここでは、選択範囲が偶数行に絞り込まれます。
その後、「.(ピリオド)」を入力し、選択候補の中から「書式」を選択します。
偶数行に対し「書式」を設定していきます。

次に、「書式」の後に「.(ピリオド)」を入力すると補完候補が出てきますので、「背景パターン」を選択します。
その後に、「=」を入力すると、「背景パターン」にセットするパターンの補完候補が表示されますので、「塗りつぶし」を選択します。
ここまでのコードは、以下のようになります。
1 2 3 4 |
Public Sub 選択範囲の背景色変更オレンジ() g_道具.セル.選択範囲(選択範囲パターン偶数行).書式.背景パターン = 塗りつぶし End Sub |
ここで、次行も、ほとんど同じ日本語コードになりますので、上の行の途中までコピペします。
1 2 3 4 |
Public Sub 選択範囲の背景色変更オレンジ() g_道具.セル.選択範囲(選択範囲パターン偶数行).書式.背景パターン = 塗りつぶし g_道具.セル.選択範囲(選択範囲パターン偶数行).書式 End Sub |
上記のような状態になったでしょうか?

2行目の「書式」に「.(ピリオド)」を入力して変換候補から「色」を選択します。
この「色」の値が背景色になります。

次に、「色」の値をセットするために「=」を入力します。
しかし、「色」には補完候補はなく、「=」を入力しても補完候補は表示されません。
ここでは、「RGB()」という関数を使用して色を決める必要があります。
「R(レッド)」「G(グリーン)」「B(ブルー)」の3色の配合比率を0~255までの数値で指定し、配合する必要があります。
しかし、これはかなりの職人技です。
そこで簡単にするために、エクセル2003までに存在していた「インデックスカラー」を使用することにします。
「インデックスカラー」とは色に名前をつけた50種類ほどの色テンプレートのことです。
ここでは、「インデックスオレンジ」というオレンジ色のテンプレートを使用することにします。
「インデックスカラー」から「RGB()」の値に変換するには、「F_色インデックスからRGB色へ変換()」という関数を使用します。
「F_色インデックスからRGB色へ変換」と入力するのは大変なので、「F_色」まで入力し「CTRLキー」+「スペースキー」を押し、関数名の補完候補を表示します。
後は、補完候補の中から「F_色インデックスからRGB色へ変換」を選択し「TAB」キーで選択を確定します。

「F_色インデックスからRGB色へ変換」の後に「(」(左カッコ)を入力すると「インデックスカラー」の補完候補が表示されますので、その中から「インデックスオレンジ」を選択してから、「)」(閉じカッコ」)を入力し関数を確定させます。
ここまでの日本語VBAは以下のようなコードになっています。
もし手元のものと違っていたら、以下のコードをコピペしてください。
1 2 3 4 |
Public Sub 選択範囲の背景色変更オレンジ() g_道具.セル.選択範囲(選択範囲パターン偶数行).書式.背景パターン = 塗りつぶし g_道具.セル.選択範囲(選択範囲パターン偶数行).書式.色 = F_色インデックスからRGB色へ変換(インデックスオレンジ) End Sub |
では、実際に日本語VBAを動かしてみましょう。
エクセルで「範囲選択」します。
もし「開発」タブが表示されていない場合、以下の記事を参考に「開発」タブを表示してください。

VBAのサブルーチン名である「選択範囲の背景色変更オレンジ」を選択し「実行」ボタンをクリックします。

実行の結果、「偶数行」がオレンジに着色されました。
選択範囲のサイズは、毎回どんなサイズでもOKです。
どんな選択範囲でも、偶数行が着色されます。
結構、色々な応用が可能かと思います。
ぜひ、奇数行、偶数列、奇数列、ステップ指定にもチャレンジしてみてください。
それでは、またー(^_^)/