• Excel全般

          メニューバーサブ Excel全般

        • 基礎

          メニューバーサブ 基礎

        • 関数

          メニューバーサブ 関数

  • メニューバー PC
  • メニューバー AI
  • メニューバー プログラム
  • メニューバー 役に立つ
  • メニューバー お問い合わせ

Excel 基礎 関数

【Excel】1行(または1列)おきに色を設定する

1行おきに色を設定する アイキャッチ

大量のデータが入力されている表を見る場合に、1行ずつ交互に背景色が付いていると、データが見やすくなります。

この記事では簡単に「しましま模様」にする方法を説明します。

これ意外と、めんどくさいねん

ブヒコ
ゴリミ

そういう人には、うってつけの内容だよ

「オートフィル」で「しましま」に

変更したい行選択して1行だけ背景色を変える

しましまにする範囲の1行だけ、背景色を変更します。

選択範囲を1行増やしてオートフィル

選択範囲を1行増やして、色が付いた範囲と、色が付いていない範囲を選択状態にします。(Shiftを押すと楽です。)

その状態で、マウスカーソルを選択範囲の右下に持っていくと、カーソルが「+」マークに変わりますので、ダブルクリックします。

オートフィルで書式のみコピー

ダブルクリックすると「オートフィル」機能が働き、データが最終行までコピーされます。

2行毎にコピーされるので、背景がしましまに変わります。

この性質を利用するために、先程選択範囲を1行増やした訳です。

ただし、このままではセルの値も変わってしまうので、右下の「オートフィルオプション」ボタンで「書式のみコピー(フィル)」を選択します。

「書式のみ」をコピーすることにより、値はそのままで1行おきに背景色が違う「しましま」模様の表が完成です。

2行をコピーして貼り付けのオプションで「書式設定」を選択

2行をコピーして、しましま にしたい範囲を選択後、[右クリック][貼り付けのオプション][書式設定]でも同様の結果になります。

注意

「オートフィル」や「書式の貼り付け」で設定したしましま模様は、行の追加削除時にずれてしまうので、しましま模様が崩れます。

以降に説明する「テーブル」と「条件付き書式」の場合は行を削除しても、しましま模様は崩れません。

「テーブルに変換」で「しましま」に

テーブル設定

エクセル アイコン2007から追加された「テーブル」機能を使います。

表をテーブルに変換すると自動で「しましま模様」に装飾されるので、これを利用します。

表をテーブルにする方法は以下の3通りあります。

  • [ホーム(タブ)][テーブルとして書式設定]から任意のテーブルスタイル(見た目)を選択
  • [挿入(タブ)][テーブル]をクリック
  • 「ショートカットキー」のCtrlTでテーブルの作成
アクティブセルが表内にあるとExcelがデータ範囲を自動判別

テーブル作成のダイアログが表示されますので、テーブルに変換するデータ範囲を指定します。

このとき、アクティブセルが表内にあると、Excelがデータ範囲を自動判別して、自動で入力してくれます。

テーブル完成

OKを押すと、表がテーブルに変換され、しましま模様になります。

列をしましま模様

[テーブルデザイン][テーブルスタイルのオプション]から、しましま模様を「行」ではなく「列」にすることも可能です。

テーブルの背景色だけでなく、他に「見出し行」「フィルターボタン」を消したり、「最初の列」「最初の行」を太字にできるので、お好みで変更してください。

しましま模様の状態でテーブルから表に戻る

表からテーブルに変換された事で、特に問題は無いどころか、表より利便性が上がるのですが、「テーブルは嫌だ」、「テーブルだと不都合が生じてしまう」といった方のために、テーブルを元の表に戻す方法があります。

[テーブルデザイン][範囲に変換]をクリックすると、しましま模様の状態を維持したまま、テーブルが表に戻ります。

ポイント

「テーブルデザイン」タブが表示されない場合、テーブル内のセルを選択するとタブが表示されます。

「条件付き書式」で「しましま」に

少々難易度が上がりますが、「条件付き書式」とExcel関数を使って「しましま模様」を設定します。

Excel関数は以下の2つを使用します。

Excel関数簡易説明
=ROW([参照])
([参照]は省略可)
参照に指定されたセルの行番号を返します。
省略した場合は、入力されているセルの行番号を返します。
例1)=ROW(B5) は「5」と表示
例2)「C3」セルに=ROW()と入力した場合は「3」と表示
=MOD(数値,除数) 数値を除数で割ったときの「余り」を返します。
例)=MOD(7,2) は、7÷2=3 余り1 なので「1」と表示
ROW関数

=ROW() 関数を設定したセルは、行番号が表示されます。

上図では「G2」セルに設定したExcel関数「=ROW()」 は「2」を、「G17」セルに設定した「=ROW() 」は「17」が表示されています。

MOD関数

=MOD() 関数は「数値」と「除数」の引数2つが必要です。

7÷2=3 余り1 となりますが、MOD関数はこの余りの「1」が欲しい場合に使う関数です。

1÷2=0 余り1

2÷2=1 余り0

3÷2=1 余り1

4÷2=1 余り0

と、連番に対して「2」で割ると余りが「1、0、1、0・・・」とループして続いていくのがわかるかと思います。

=ROW() 関数の値を見てみると、2~17までの連番になっています。

この2つの性質を利用して、=ROW() 関数で求めた連番を、MOD() 関数を使って「2」で割った余りを出し、その数が1なら背景色を変えるという条件にすれば「しましま模様」ができそうです。

しましま模様にする範囲を選択後に条件付き書式

しましま模様にする範囲を選択後に、[ホーム(タブ)][条件付き書式][新しいルール]をクリックします。

条件付き書式の設定

条件付き書式のダイアログボックスが表示されますので、「数式を使用して、書式設定するセルを決定」を選択して、「次の数式を満たす場合に値を書式設定」の入力欄に「=MOD(ROW(),2)=1 」と入力してください。

次に、「書式」ボタンをクリックし、[塗りつぶし(タブ)][背景色]から任意の色を選択後、OKボタンをクリックします。

条件付き書式でしましま模様

しましま模様が設定できました。

しましま模様の位置変更

しましま模様の位置を1行ずらす場合は、条件付き書式の入力欄で
=MOD(ROW(),2)=0 」に変更してください。

また、しましま模様を3行おきにする場合は、条件付き書式の入力欄で
=MOD(ROW(),3)=1 」に変更すれば可能です。

行ではなく、列にする場合は、「=MOD(COLUMN(),2)=1 」に(「ROW」を「COLUMN」に)変更してください。

ポイント

7 ÷ 2 の「商」である「3」はMOD関数では求められません。

7 ÷ 2 の商を求める場合は

  • =QUOTIENT(7,2)
  • =INT(7/2)
  • =FLOOR(7/2,1)

等があります。

まとめ

日常生活で余りを求める事は稀かと思いますが、プログラムの世界では周期性のある値を求める時に、余りを利用する事がよくあります。

例えば、身近にある周期性のあるものといえば、「曜日」等がそれに当てはまります。

10000日後は何曜日か?」という問題があった場合、余りを考えると簡単に解くことができます。

10000 ÷ 7 =1428 余り 4 となるので、4日後と同じ曜日である、が答えになります。

実際に今日が2023/01/01(日曜日)だとすると、10000日後は2050/5/19(木曜日)となり、4日後と同じ曜日になっています。(ちなみにExcelで本日から10000日後の曜日を出す場合の数式は「=TEXT(TODAY()+10000,"aaa")」です。 )

話が脱線してしまいましたが、「しましま模様」にするには、テーブル化するのが一番簡単で便利です。

シマシマにしてシマウマになってみたんやけど、どや?。

ブヒコ
ゴリミ

車に轢かれたようにしか見えない・・・

-Excel, 基礎, 関数