【エクセルVBA】セルの色をランダムに大量変更!意外と勉強になる。

f:id:yshgs_elec:20210105220340j:plain

こんにちは、最近息子が色を覚え始めたヒガシです。

そんな息子にあるマクロを作って見せてあげたところ、テンションが爆上がり。

 

とても楽しい時間を過ごすことができました。

「この喜びを世のお父さんとも共有したい。」

こんな思いから、我が子のテンションを爆上げさせた、【セルの色をランダムに大量変更するマクロ】をご紹介しようと思います。

(そうです。通称ゴミマクロです。)

 

最終的に作り上げるものは業務上なんの役にも立たないものですが、そこに用いられているスキルは日々の業務に役立つものも含まれているはずです。

 

ぜひ最後までご覧ください。

それでは早速やっていきます!

 

スポンサーリンク

紹介するマクロの概要説明

まずはじめに今回の記事で紹介する内容を簡単にご説明しておきます。

 

今回は以下の画像のようにある範囲内のセルにランダムに色をつけていくマクロになります。

セルにランダムに色を付けた結果

子供心はわかりませんが、なんとなくテンション上がりそうですよね。

 

ここからは、こいつの作り方を順をおって解説していきます。

スポンサーリンク

VBAを使用可能にしておく

エクセルでVBAを使ったことがないひとは、まずはVBAを使える環境を整えておきましょう。

 

以下の記事に始め方を掲載していますので、ぜひご覧ください。

【初心者用】エクセルマクロ(VBA)の始め方を詳細解説 – ヒガサラblog

 

スポンサーリンク

色付けVBAコードの記述

VBAを使用できる環境構築がととのった方は以下のコードをコピペしてはりつけましょう。

※今回は縦10行、横15列の範囲のセルの色を変えてみます。

 

◆セルの色をランダムに大量変更するコード

Sub random_cell_color()
    Dim i As Integer, j As Integer
    Dim R_value As Integer, G_value As Integer, B_value As Integer
    For i = 1 To 10
        For j = 1 To 15
            R_value = WorksheetFunction.RandBetween(0, 255)
            G_value = WorksheetFunction.RandBetween(0, 255)
            B_value = WorksheetFunction.RandBetween(0, 255)
            Cells(i, j).Interior.Color = RGB(R_value, G_value, B_value)
        Next
    Next
End Sub

 

スポンサーリンク

実行結果の確認

コードの記述が終わったら、最後に実際に実行してみましょう。

 

開発タブ⇒マクロ⇒random_cell_colorを選択⇒実行

で実行してみましょう。

 

以下が実行結果です。

セルにランダムに色を付けた結果

きちんとランダムに色が付けられていますね。

 

ぜひあなたもお子様と一緒に遊んでみてください。

スポンサーリンク

おわりに

というわけで今回はセルの色をランダムに大量変更するマクロをご紹介しました。

なんの意味もない作業ですが、今回紹介したコードの中では

◆セルの色を変更する

【VBA】セルの背景色&文字色を変更する方法!RGB概念から解説!

◆For Nextで繰り返し処理

【VBA】繰り返し処理の基礎スキル!For Nextを徹底解説!

◆RANDBETWEEN関数で整数乱数の作成

【エクセル】指定範囲内の整数をランダムに作成する方法!VBAへの組み込みまで!

など、意外とマニアックなスキルも使われています。

 

それぞれのスキルについても詳細解説していますのでぜひそちらもご覧ください。

 

このように私のブログではエクセルスキルはもちろん、様々なプログラミングスキルを紹介しています。

・日々の残業時間を減らしたい。

・業務をもっと効率的にこなしたい。

・もっと勉強する時間を作りたい。

こんな思いを持っている人は、ぜひ他の記事も見てみてくださいね。

この記事が役に立ったという方は、ぜひ応援よろしくお願いします。

↓ 応援ボタン

にほんブログ村 IT技術ブログ VBAへ
にほんブログ村

それではまた!

コメント

タイトルとURLをコピーしました