こんちくわ あ゛じです。
久しぶりにエクセルネタでもいってみましょう!w
エクセルの表が見づらいんですけど
例えばこんな表があったとしましょう。
愛知県の日本人人口、男女計の数値は?
う、う~んと・・・
思わずパソコンの画面に定規をあてたくなっちゃいます。
(あと、ハズキルーペが欲しいぞ!キャッ!w)
印刷した紙でもそうですが、特に横方向に長い表って行の見分けがしづらいですよね。
こんな時は一行おきに薄い色を着けると見やすくなるんですが、行数が多いと、一行ずつ選択して色を付けるのが大変です。
コピーしたあと、Ctrl 押しながら一行おきに選択して書式の貼り付けをすればちょっとは早いんですが、それだって結構面倒です。
それに、あとから行の削除や移動といった編集をした場合、色が着いている行が、一行おきじゃなくなることもあって、困ってしまいます。
もっと良い方法ないかな?
MOD関数+条件付き書式で表を見やすく
この悩みは、MOD関数と条件付き書式を組み合わせることで解決出来ます。
まずは色を着けたい範囲を選択しておきます。
次に「条件付き書式」→「新しいルール」をクリックします。
「数式を使用して、書式設定をするセルを決定」を選択し、「次の数式を満たす場合に値を書式設定」の欄に以下の関数を入力します(コピペOK)。
「書式」をクリックし、塗りつぶしタブから好みの色を選んで「OK」をクリックします。
ほら!一行おきに色が着きましたよ!
しかも、行を削除しても、一行おきのパターンは崩れません。
例えば、No10の群馬県の行を削除してみます。
群馬県の行が無くなっても、色は一行おきに着いてますね!
これでもう、ハズキルーペは必要ありませんw
内容の解説
今回はMOD関数と条件付き書式の複合ワザなんだけど、エクセル初心者にはちょっと難しいかな?
条件付き書式っていうのは、決めたルール(条件)を満たした場合、決めた書式で表示するっていうコマンドです。
今回の場合、=MOD(ROW(),2)=0 という数式を満たした場合、グレーの色で塗りつぶすというルールですね。
じゃあ、=MOD(ROW(),2)=0 はどういう意味?っていうことですが、いくつかに区切って説明します。
まず、最初の = は、数式を使う場合に必ず付けるルールになっています。
MOD(○,□)の部分は、○÷□の余りを求めなさいという関数です。
例えばMOD(7,2)だったら、7÷2=3余り1なので、1が求められます。
今回は分子になる部分には、数値ではなくROW()と書かれていますね。
ROW()には、そのセルの行数が代入されるんです。
2行目のセルなら2、3行目のセルなら3です。
なので2行目のセルだったらMOD(2,2)で余りの0が求められます。
3行目のセルだったらMOD(3,2)で余りの1が求められます。
MOD(ROW(),2)のあとに「=0」と書かれています。
つまり、MOD(ROW(),2)で求められた値がイコール0(0と同じ)だったら、条件付き書式で設定した色で塗りつぶししてねというルールになっています。
具体的に1行ずつ見てみましょう。
リストは4行目(北海道)から始まっていますね。
4行目 4÷2で余りは0なので、条件を満たしているため塗りつぶしされます。
5行目 5÷2で余りは1なので、条件を満たしていないため塗りつぶしされません。
6行目 6÷2で余りは0なので、条件を満たしているため塗りつぶしされます。
7行目 7÷2で余りは1なので、条件を満たしていないため塗りつぶしされません。
以下、繰り返し・・・
こういう理由で1行おきに塗りつぶしがされるワケです。
この方法だと、セルの内容ではなく行数ROW()によって塗りつぶしがされるため、行の削除をしようが塗りつぶしパターンが崩れることはありません。
説明ヘタだけど分かったかな?(汗)
おわりに
割り算の余りを求める関数で、行の着色条件を設定する。
ちょっとトンチを効かせたような発想だけど、エクセルではよくあることです。
こういうのを考えるのが楽しくて、オレはエクセルにハマりましたw
※追記
実は一行おきに色を着けたりするのは、「テーブルとして書式設定」でカンタンに出来たりしますw
今回は関数の説明も絡めたかったんで、MOD関数を使ってみました。
その他のエクセル関連記事はこちら