日本語VBAで エクセルの選択範囲を 色づけしてみよう

Pocket

日本語VBAで エクセルの選択範囲を 色づけしてみよう
日本語VBAでエクセルの選択範囲を色づけしてみよう

序文

はい。

今日は、

  • エクセルのセルの選択範囲の背景色を色づけする日本語VBA

の作り方を解説します。

これは、今後、

  • 選択範囲の偶数行のみ背景色を色づけする
  • 選択範囲の奇数行のみ背景色を色づけする
  • 選択範囲の1行を「第1月」~「第n月」までセルの値をセットする

などの日本語VBAを組む際に応用できる方法です。

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

レッスン

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

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

 

次に、下記手順で、VBAの編集画面を開きます。

サブルーチン名を入力する
サブルーチン名を入力する

次にサブルーチン名を入力します。

Public Sub 選択範囲の背景色を灰色に変更

とまで入力し、「ENTER」キーを押して改行します。

サブルーチンの囲いが自動挿入される
サブルーチンの囲いが自動挿入される

すると、サブルーチンの囲いが自動挿入されます。

Public Sub 選択範囲の背景色を灰色に変更()


End Sub

上のようになコードになります。

「g_」まで入力し、「CTRL」キーを押しながら「スペース(空白)」キーを押します。
「g_」まで入力し、「CTRL」キーを押しながら「スペース(空白)」キーを押します。

ここで、エクセルVBA日本語化のおきまりのおまじないとして、「g_道具」を呼び出します。

日本語VBAは、ほとんど「g_道具」から使い始めます。

ただ、毎回「g_道具」と入力する必要はありません。

「g_」とまでで入力し、後は補完させることができます。

「g_」まで入力し、「CTRL」キーを押しながら「スペース(空白)」キーを押します。

「g_道具」とまで補完される
「g_道具」とまで補完される

「g_道具」とまで補完されました。

「g_道具」から、どのような操作エクセルに対してできるかを調べるには、「g_道具」に続けて「.(ピリオド)」を入力します。

「.(ピリオド)」を入力し、補完候補から「セル」を選択する
「.(ピリオド)」を入力し、補完候補から「セル」を選択する

「.(ピリオド)」を入力し、補完候補から「セル」を選択します。

これで、エクセルのセルに対してできる操作を調べることができます。

(ただし、初期状態では、このセルは”A1″セルです。ここでは簡略化のため、ここの説明は省いています。この章の操作にはこれは関係ありません。)

エクセルのセルに対してできる操作を調べるには、続けて「.(ピリオド)」を入力します。

「セル」の操作の補完候補から「選択範囲」を選択
「セル」の操作の補完候補から「選択範囲」を選択

「セル」の操作の補完候補から「選択範囲」を選択します。

これで、エクセル上で選択しているセルの選択範囲に対して操作を行うことができます。

続けるには、さらに「.(ピリオド)」を入力します。

「選択範囲」の操作の候補から「書式」を選択する
「選択範囲」の操作の候補から「書式」を選択する

「選択範囲」の操作の候補から「書式」を選択します。

「書式」から「背景色パターン」を選択する
「書式」から「背景色パターン」を選択する

「書式」から「背景色パターン」を選択します。

この「背景色パターン」は、セルの選択範囲の背景色の塗り方のパターンを指定するものです。

ハッチングや横罫線、格子模様、塗りつぶしなどのパターンが選べます。

「背景色パターン」から「塗りつぶし」を選択する
「背景色パターン」から「塗りつぶし」を選択する

ここでは、「背景色パターン」から「塗りつぶし」を選択します。

これで、1行目は完了です。

下記のコードのようになっているか確認されてください。

Public Sub 選択範囲の背景色を灰色に変更()
    g_道具.セル.選択範囲.書式.背景パターン = 塗りつぶし

End Sub

VBAでは「なにがしかのものに値を設定する」には、「A = B」という書式を使用します。

これは「BをAにセットする」という意味です。

数学の「y = x + 1」や「2 + 3  = 5」の「=」とは意味が異なりますので、注意してください。

次に、実際の背景色を設定します。

インデックスカラーから「オレンジ」を選択する
インデックスカラーから「オレンジ」を選択する

ここで、注意が必要なのですが、ここで解説する背景色の設定の仕方は「エクセルVBA日本語化」ver0.11以上のバージョンでのみ有効です。

===

「エクセルVBA日本語化」ver0.11のアルファバージョンをダウンロードするには、このリンクをクリックしてください。

===

ver0.10以下のバージョンでの方法は別途後述します。

ここでは、「選択範囲」の「書式」に「背景色パターン色パターン」の選択候補を選択します。

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

「背景色パターン色パターン」は、あらかじめ色の設定が決められている「インデックスカラー」というテンプレートの色を使用できます。

ここでは、色のパターンのインデックスから、「インデックスオレンジ」という項目を選択します。

最終的な日本語VBAコード
最終的な日本語VBAコード

最終的な日本語VBAコードは、以下のようになります。

Public Sub 選択範囲の背景色を灰色に変更()
    g_道具.セル.選択範囲.書式.背景パターン = 塗りつぶし
    g_道具.セル.選択範囲.書式.背景パターン色パターン = インデックスオレンジ
End Sub
ver0.10以下の場合の日本語VBAコード
ver0.10以下の場合の日本語VBAコード

ver0.10以下の場合の日本語VBAコードは以下のようになります。

' 「エクセルVBA日本語化」ver1.11 未満のバージョンの場合
Public Sub 選択範囲の背景色を灰色に変更02()
    g_道具.セル.選択範囲.書式.背景パターン = 塗りつぶし
    g_道具.セル.選択範囲.書式.色 = RGB(255, 102, 0)
End Sub

「背景パターン色パターン」の項目が、「色」に置き換わっていて、「色」の値に「RGB(255, 102, 0)」という関数が置かれています。

「RGB関数」と少し難しい概念が入るため、ここでは説明を省きますが、「RGB(255, 102, 0)」でオレンジ色の表現ができるものと思ってください。

先ほどのインデックスのパターンから色を選択するのもお手軽です。

エクセルで範囲を選択する
エクセルで範囲を選択する

それでは、実際に選択範囲に色をつけてみましょう。

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

「開発」タブを開き「マクロ」をクリックする
「開発」タブを開き「マクロ」をクリックする

そして「開発」タブを開きます。

「開発」タブの開き方は、以下の記事を参照してください。

そして「開発」タブの「マクロ」をクリックします。

「マクロ」とはVBAのことです。

日本語VBAの「サブルーチン」名を選択して実行する
日本語VBAの「サブルーチン」名を選択して実行する

先に作成した日本語VBAのサブルーチン名を選択して「実行」をクリックします。

実行結果
実行結果

実行結果は、上のようになります。

無事、オレンジで選択範囲が塗りつぶされていますね。

はじめてのVBAでは、なかなか思い通りにいかなくて、色々と戸惑うこともあるかと思います。

「エクセルVBA日本語化」ではなるべく、ユーザーの皆さんの負担を減らせるような仕組み作りをしようと思っていますので、どうぞ、宜しくお願い致します。

The following two tabs change content below.
KaBA@フリーランス修行中

KaBA@フリーランス修行中

こんにちは!IT業界で勤めて17年くらい務めています。プログラミング大好きやろーです。 自分も独学でC言語を覚えIT会社に就職しました。その後紆余曲折を経て、VB6.0、VBA、Perl、C#、HTML、CSS、JavaScript、PHPなどを覚えていきました。全部C言語の独学時の経験がベースとなって、学習曲線が良いカーブを描いていました。 情報工学科を出ていなくても、独学でエンジニアは育つことができると思います! このブログで皆さんがプログラミングに興味を持たれるのを心待ちにしています! 頑張って覚えられてください!よろしくお願いします。 趣味は読書で、小宮一慶さんや松下幸之助さんなど著名人の本を読んでいる他、赤川次郎さんの三毛猫ホームズシリーズ司馬遼太郎吉川英治さんの三国志などが好きです。