Excel。並べ替えをしても、横縞模様を維持するのはどうしたらいいの
<条件付き書式+MOD+ROW関数>
テーブル機能を表に追加すれば、表のデザインを、横縞模様を選べば、並べ替えをしても横縞模様で設定されます。
では、通常の帳票や表の場合、どうしたら効率よく、縞模様することができるのでしょうか。
横縞模様にしたいわけですから、一行おきに塗りつぶしをしたいわけですね。
一行おきに塗りつぶすということで、条件付き書式をつかうと対応することができます。
では、条件付き書式を設定していきます。
A2:C11を範囲選択します。
ホームタブの条件付き書式にある「新しいルール」をクリックします。
「新しいルール」ダイアログボックスが表示されます。
「数式を使用して、書式設定するセルを決定」を選択します。
次の数式を満たす場合に値を書式設定のボックスに、次の数式を設定します。
=mod(row(),2)
あとは、書式ボタンをクリックして、書式を設定します。
新しいルールダイアログボックスに戻ってきたらOKボタンをクリックします。
これで、横縞模様を設定することができました。
売上高を降順にしてみます。
降順に並べ替えをしても、横縞模様が継続されていることが確認できます。
設定した数式を説明します。
=mod(row(),2)
最初のMOD関数は、除算した余りを算出することができる関数です。
何を除算するのかというと、それがROW関数です。
MOD関数の最初の引数は、ROW関数で、そのセルの行番号を算出することができる関数です。
A3は、3行目なので、「3」を算出するわけです。
今回は、1行おきなので、2で除算するので、引数の2つ目は、「2」と設定します。
さて、
行番号を2で除算した余りが、「1」と「0」が算出されるわけですね。
設定した数式には「=1」とか「=0」とかありませんが、塗り分けされています。
これは、1ならば、Excelでは、1を「TRUE」としています。
すなわち、この数式の条件は成立しているということを意味することになるので、書式が反映されるというわけです。
余りがない場合は0なので、Excelでは、0を「FALSE」としています。
FALSEですから、この数式の条件は合致していないということを意味していますので、そのままで、塗りつぶしはされないというわけです。
条件付き書式は、数式を設定することで、様々な表現をすることができます。