青色発光ダイオードの発明でLED電球が世に送り出され、その省エネ性と、鮮やかな発色に、世の中の人が大歓迎しましたね。LED電球は、白色に光っています。最近はLED電球の青色成分が良くないということで、「ブルーライトカット」された電球やモニタが普及していますね。これは白色光の中の青色を幾分カットし、目にダメージを与えないためでした。3つに分けられることをご存じでしたか?パソコンのモニタの光の成分も同じです。これを「光の三原色」といいます。今回は、セルの背景色から「光の三原色」の成分を取り出す、という日本語VBAを組んでみます。いっても、難しいものではありません。日本語関数に、「F_色の三原色を取得()」関数が存在しますので、その関数を呼び出せば済むことです。ver0.17.0-alpha-1」以上のバージョンが必要です。以下のURLよりダウンロードされてください。ダウンロードhttps://cunning-pg.ringing-web.com/download/エクセルVBA日本語化ダウンロード以下のリンクから、ダウンロードできます。エクセルVBA日本語化アドインのパスワードロックを解除しました。今回の日本語VBAのプログラムの完成形は上図の通りです。A列の各セルの背景色に色々な色を設定しています。B列に赤色成分の値、C列に緑色成分の値、D列に青色成分の値を取得しています。各成分の値は、VBAの仕様上、0~255までとなっています。メイン処理を作るまずは、サブルーチンの形を作る。メイン処理となるサブルーチンを作りましょう。下記コードをコピペしてください。次に、まずは「g_道具」を取り出しましょう。「g_」まで入力し、CTRL+スペースキーを押下します。「セル」を選択すると、「g_道具」と補完されます。その後、「.(ピリオド)」を入力すると、自動的に補完候補が表れます。TABキーを押下して選択を確定します。「選択範囲」を選択さらに、「セル」の後に、「.(ピリオド)」を入力します。すると、補完候補が表れますので、「選択範囲」を選択し、TABキーを押下して、選択を確定します。「セル」の「セルごとにサブルーチン呼び出し」を選択さらに「.(ピリオド)」を入力すると、補完候補が表れます。選択肢の中から、「セルごとにサブルーチン呼び出し」メソッドを選択し、TABキーを押下し選択を確定します。最後に、セルごとに呼び出すサブルーチン(ブロックと称しています)として、「“b_色の三原色を横に3列のセルに保存”」を指定します。以上までの手順で、選択範囲内のセルごとに、ブロック「”b_色の三原色を横に3列のセルに保存”」が呼び出されます。後は、ブロック「”b_色の三原色を横に3列のセルに保存”」の中で、セルごとに背景色の光の三原色(赤、緑、青)の値を、「F_色の三原色を取得()」関数で取得し、各値をエクセルシートのB列以降のセルにセットしていきます。メイン処理は以上です。メイン処理のコードは以下のようになります。コピペされてください。Subセルの背景色の三原色を取得するブロックを作るまずは、ブロックであるサブルーチンの形を作成するまずは、ブロック「“b_色の三原色を横に3列のセルに保存”」の大枠を作ります。サブルーチンの形を取り、w_赤、w_緑、w_青の作業変数を宣言します。コードは以下のものをコピペされてください。Sub「F_色の三原色を取得()」関数を使って、セルの背景色から、赤、緑、青色の値を取得し、セルの右どなりのセルへ値をセットする次に、「F_色の三原色を取得()」関数を使って、セルの背景色から、赤、緑、青色の値を取得します。w_赤、w_緑、w_青変数にそれぞれの光の三原色の成分の値が取得されます。後は、呼び出し元のセルからの相対位置で、右に3列、B列、C列、D列へ、それぞれ赤、緑、青の値をセットしていきます。以上でコードは完成です。以下のコードをコピペされてください。赤、緑、青色の値を取得したい、セルを範囲選択しれでは、VBAを実行します。A列を用意してください。光の三原色の成分を取得したいセルを範囲選択します。「開発」タブ→「マクロ」をクリック「開発」タブから「マクロ」ボタンをクリックします。開発タブがエクセルに表示されていないときは、以下のURLにある方法で、開発タブを表示してください。VBAを手軽に実行してみようhttps://cunning-pg.ringing-web.com/%E3%82%A8%E3%82%AF%E3%82%BB%E3%83%AB%E3%81%A7-%E3%80%8C%E9%96%8B%E7%99%BA%E3%80%8D%E3%82%BF%E3%83%96%E3%82%92%E9%96%8B%E3%81%8D-vba%E3%82%92%E6%89%8B%E8%BB%BD%E3%81%AB%E5%AE%9F%E8%A1%8C%E3%81%97/エクセルで「開発」タブを開きVBAを手軽に実行してみようはい。エクセルブックのリボンに「開発」タブを追加し、VBAを手軽に実行できるようエクセルを設定する方法を、解説します。エクセル関数日本語化のインストール方法は、以下の記事を参照してくださ...サブルーチン名を選択して、「実行」ボタンをクリックすると、「マクロ」ダイアログが開きますので、実行したいマクロ名(サブルーチン名)をクリックして選択し、「実行」ボタンをクリックしてそのマクロを実行します。セルの背景色の光の三原色の値を取得できた。私のエクセルでは、上図のような結果になりました。赤の成分に寄りすぎている背景色もありますし、全体にバランスの良い背景色もあります。白色は、三原色の赤、緑、青の全てが最大の値で混ざっていますね。白色は、全ての色が混じった色なのです。このあたり、絵の具とは違いますね。まとめ皆さん、大変お疲れ様でした。ここまで読んで頂いて、誠にありがとうございました。今日の学びを以下にまとめます。メイン処理では、選択範囲のセルを、「セルごとにサブルーチン呼び出し」メソッドでループさせた方が、一番楽な方法です。「セルごとにサブルーチン呼び出し」メソッドの呼び出し先のブロックでは、「F_色の三原色を取得()」関数で、意外とあっさり、光の三原色の成分を取得できました。コードを実行するには、まず、セルの背景色を色々と違う色に設定し、そのセルを範囲選択します。次に、「マクロ」ダイアログからマクロ名(サブルーチン名)を選択し、「実行」ボタンをクリックすることで、コードを実行できます。今回の課題は、ブロックや日本語関数を使うことで、大変短いコードになっています。いった、コードを応用し、今後に活かされてください。最新の記事KaBA@フリーランス修行中こんにちは!IT業界で勤めて17年くらい務めています。プログラミング大好きやろーです。自分も独学でC言語を覚えIT会社に就職しました。その後紆余曲折を経て、VB6.0、VBA、Perl、C#、HTML、CSS、JavaScript、PHPなどを覚えていきました。全部C言語の独学時の経験がベースとなって、学習曲線が良いカーブを描いていました。頑張って覚えられてください!よろしくお願いします。さんの三国志などが好きです。以下の記事の手順で、エクセル関数日本語化をインストールした後、無事VBAが日本語になっているか確認してみましょう。下記記事の手順で、エクセルを起動し、エクセルのVBAの編集画面を開きます。JSONデータからハッシュを作る。難しいことはできない。このサイトで公開しました。ベクターにも公開申請中です。(8)AWHホスティング999円で8GBメモリのVPS。AWHホスティングがご提供。G-Toolsエクセル関数日本語化というエクセルの関数を日本語にする無料のアプリがあります。エクセルファイル単体で日本語化されていますので、PCの他のエクセルファイルには影響はありません。ワンコイン(1ドル)でご購入できます。エクセルの関数も日本語で覚えれば、意外と素直にわかりやすいです。G-Toolsエクセル関数日本語化というエクセルの関数を日本語にする無料のアプリがあります。エクセルファイル単体で日本語化されていますので、PCの他のエクセルファイルには影響はありません。ワンコイン(1ドル)でご購入できます。エクセルの関数も日本語で覚えれば、意外と素直にわかりやすいです。WordPress%d人のブロガーが「いいね」をつけました。