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

Pocket

序文

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

はい。

今日は、

  • エクセルVBA日本語化で 選択範囲の偶数行を 簡単に配色する

というテーマでお伝えします。

このやり方を覚えたら、

  • エクセルVBA日本語化で 選択範囲の奇数行を 簡単に配色する
  • エクセルVBA日本語化で 選択範囲の指定行を 簡単に配色する
  • エクセルVBA日本語化で 選択範囲の指定列を 簡単に配色する

などにも、応用できます。

エクセル関数日本語化のインストール方法は、以下の記事を参照してください。

なお、ここで紹介するコードは「エクセルVBA日本語化」ver0.11以上が必要です。

下記URLよりダウンロードされてください。

レッスン

まずは、エクセルを起動しましょう。

エクセルを起動
エクセルを起動

そして、以下の記事の手順通りに、VBA画面を開きます。

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

サブルーチン名を入力して「ENTER」し改行
サブルーチン名を入力して「ENTER」し改行

次に、サブルーチン名を入力し、「ENTER」を押し改行します。

サブルーチンの枠が作られる
サブルーチンの枠が作られる

すると、「()」がつき「End Sub」までが自動入力され、サブルーチンの枠が用意されます。

ここでは、「選択範囲の背景色変更オレンジ」というサブルーチンを作っていきます。

「g_道具」の後に「.(ピリオド)」を入力し、選択候補から「セル」を選択
「g_道具」の後に「.(ピリオド)」を入力し、選択候補から「セル」を選択

次に「g_道具」の後に「.(ピリオド)」を入力し、選択候補から「セル」を選択します。

「g_道具」はすべて手で打つ必要はなく、「g_」まで入力してから「CTRL」キーを押しながら「スペース(空白)」キーを同時に押すことで、「g_道具」と補完されます。

入力が面倒な状況になった際には、「CTRLキー」+「スペースキー」をおしてみると良いでしょう。

うまくいけば、補完候補が表示されますので、入力の手間が省けます。

「セル」から「.(ピリオド)」を入力し「選択範囲」を選択する
「セル」から「.(ピリオド)」を入力し「選択範囲」を選択する

 

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

「選択範囲」の後に「(」(左カッコ)を入力し、選択範囲のオプションを表示する
「選択範囲」の後に「(」(左カッコ)を入力し、選択範囲のオプションを表示する

「選択範囲」の後に「(」(左カッコ)を入力し、選択範囲のオプションを表示します。

オプションには上図のようなものがあり、それぞれ

  • 選択範囲内の偶数行
  • 選択範囲内の奇数行
  • 選択範囲内の偶数列
  • 選択範囲内の奇数列
  • 選択範囲内の指定ステップ間隔ごとの行
  • 選択範囲内の指定ステップ間隔ごとの列
  • 指定なし(行、列番号を直接指定するか、選択範囲すべてを対象にする)

などの、選択範囲の絞り込みができます。

「偶数行」を選択してから閉じカッコ「)」を入力し、「.(ピリオド)」で区切った後「書式」を選択
「偶数行」を選択してから閉じカッコ「)」を入力し、「.(ピリオド)」で区切った後「書式」を選択

「偶数行」を選択してから閉じカッコ「)」を入力し選択範囲のオプションの指定を完了します。

ここでは、選択範囲が偶数行に絞り込まれます。

その後、「.(ピリオド)」を入力し、選択候補の中から「書式」を選択します。

偶数行に対し「書式」を設定していきます。

「書式」の「背景色パターン」に「塗りつぶし」をセット
「書式」の「背景パターン」に「塗りつぶし」をセット

次に、「書式」の後に「.(ピリオド)」を入力すると補完候補が出てきますので、「背景パターン」を選択します。

その後に、「=」を入力すると、「背景パターン」にセットするパターンの補完候補が表示されますので、「塗りつぶし」を選択します。

ここまでのコードは、以下のようになります。

ここで、次行も、ほとんど同じ日本語コードになりますので、上の行の途中までコピペします。

上記のような状態になったでしょうか?

「書式」に「.(ピリオド)」を入力して変換候補から「色」を選択
「書式」に「.(ピリオド)」を入力して変換候補から「色」を選択

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

この「色」の値が背景色になります。

「F_色」まで入力し「CTRLキー」+「スペースキー」を押し、関数名の補完候補を表示する
「F_色」まで入力し「CTRLキー」+「スペースキー」を押し、関数名の補完候補を表示する

次に、「色」の値をセットするために「=」を入力します。

しかし、「色」には補完候補はなく、「=」を入力しても補完候補は表示されません。

ここでは、「RGB()」という関数を使用して色を決める必要があります。

「R(レッド)」「G(グリーン)」「B(ブルー)」の3色の配合比率を0~255までの数値で指定し、配合する必要があります。

しかし、これはかなりの職人技です。

そこで簡単にするために、エクセル2003までに存在していた「インデックスカラー」を使用することにします。

「インデックスカラー」とは色に名前をつけた50種類ほどの色テンプレートのことです。

ここでは、「インデックスオレンジ」というオレンジ色のテンプレートを使用することにします。

「インデックスカラー」から「RGB()」の値に変換するには、「F_色インデックスからRGB色へ変換()」という関数を使用します。

「F_色インデックスからRGB色へ変換」と入力するのは大変なので、「F_色」まで入力し「CTRLキー」+「スペースキー」を押し、関数名の補完候補を表示します。

後は、補完候補の中から「F_色インデックスからRGB色へ変換」を選択し「TAB」キーで選択を確定します。

「インデックスオレンジ」を選択する
「インデックスオレンジ」を選択する

「F_色インデックスからRGB色へ変換」の後に「(」(左カッコ)を入力すると「インデックスカラー」の補完候補が表示されますので、その中から「インデックスオレンジ」を選択してから、「)」(閉じカッコ」)を入力し関数を確定させます。

ここまでの日本語VBAは以下のようなコードになっています。

もし手元のものと違っていたら、以下のコードをコピペしてください。

エクセルで「範囲選択」する
エクセルで「範囲選択」する

では、実際に日本語VBAを動かしてみましょう。

エクセルで「範囲選択」します。

「開発」タブから「マクロ」を[クリックする
「開発」タブから「マクロ」をクリックする
「開発」タブから「マクロ」をクリックします。

もし「開発」タブが表示されていない場合、以下の記事を参考に「開発」タブを表示してください。

「選択範囲の背景色変更オレンジ」を選択し「実行」ボタンをクリックする
「選択範囲の背景色変更オレンジ」を選択し「実行」ボタンをクリックする

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

「偶数行」がオレンジに着色された
「偶数行」がオレンジに着色された

実行の結果、「偶数行」がオレンジに着色されました。

選択範囲のサイズは、毎回どんなサイズでもOKです。

どんな選択範囲でも、偶数行が着色されます。

結構、色々な応用が可能かと思います。

ぜひ、奇数行、偶数列、奇数列、ステップ指定にもチャレンジしてみてください。

それでは、またー(^_^)/