• ベストアンサー

【Excel】条件付き書式で飛び列のRANK色づけ

添付図のような表で、月別合計欄の売上上位3位に、 『条件付き書式』でそれぞれ色を付ける方法を知りたいです。 例えば 図では、1位6月、2位5月、3位4月となっていますので、 6月売上合計 284,000 のセルが黄色 5月売上合計 102,000 のセルが水色 4月売上合計  71,000 のセルが緑色 というようにする場合の方法について、お教え下さい。 (当方、Excel2010を利用しております)

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

こんにちは。 色々な方法があって、まだまだ他にも出て来そうですが、 後々「列を挿入する」ことを前提にした作表なのですから、 毎月その度にやり直さないで済むように作っておいた方が宜しいいかと。 ============================================================ (1)C8:J8を選択 (2)【ホーム】タブ → [スタイル] → [条件付き書式]  ┣[新しいルール] → 【新しい書式のルール】  ┃┣[指定の値を含むセルだけ書式設定]  ┃┃┗[次のセルのみを書式設定]  ┃┃  ┗[[セルの値]] [[次の値に等しい]] [[=MAX($C$8:$J$8)]]  ┃┗[書式] → 【セルの書式設定】  ┃┃┣ 【塗りつぶし】タブ  ┃┃┃┗[背景色]  ┃┃┃  ┗黄色を選択  ┃┗┗[OK]  ┗[OK] (3)【ホーム】タブ → [スタイル] → [条件付き書式]  ┣[新しいルール] → 【新しい書式のルール】  ┃┣[指定の値を含むセルだけ書式設定]  ┃┃┗[次のセルのみを書式設定]  ┃┃  ┗[[セルの値]] [[次の値に等しい]] [[=LARGE($B$8:$J$8,2)]]  ┃┗[書式] → 【セルの書式設定】  ┃┃┣ 【塗りつぶし】タブ  ┃┃┃┗[背景色]  ┃┃┃  ┗水色を選択  ┃┗┗[OK]  ┗[OK] (4)【ホーム】タブ → [スタイル] → [条件付き書式]  ┣[新しいルール] → 【新しい書式のルール】  ┃┣[指定の値を含むセルだけ書式設定]  ┃┃┗[次のセルのみを書式設定]  ┃┃  ┗[[セルの値]] [[次の値に等しい]] [[=LARGE($B$8:$J$8,3)]]  ┃┗[書式] → 【セルの書式設定】  ┃┃┣ 【塗りつぶし】タブ  ┃┃┃┗[背景色]  ┃┃┃  ┗緑色を選択  ┃┗┗[OK]  ┗[OK] ============================================================ 後々「列を挿入する」時の手順にも注意して下さい。 一例ですが、 ============================================================ (1)一旦、J:K列を丸ごと選択してから[挿入] (2)H:I列を丸ごと選択してからコピー (3)新しく挿入が済んだJ:K列を選択してから、 (4)【ホーム】タブ > [クリップボード] > [貼り付け▼]  ┗[条件付き書式の結合] (5)月を書き直して、数値範囲(合計行以外)を初期化 ============================================================ [条件付き書式の結合]手順を端折ると、 条件付き書式のルールの数が増えるばかりで管理の難しいシートになってしまいます。 件数が売上額を超えることはない、という前提を利用した方法になります。 何よりも、後々の管理のし易さ、を重視しています。 なにか不都合があるようでしたらば、補足欄にでも書いてみてください。

mlgt110
質問者

お礼

ご回答有難うございます。 非常に良く分かりました。分かり易い解説有難うございます。 また、今後の行・列を増やす運用まで見据えた アドバイスも大変助かります。 有難うございました。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

(1)エクセル2003までは条件付き書式の条件は3つまでだったが、 2007以後はそれ以上(4つ以上)でも設定できる。ましてエクセル2010ならOK。 http://www.asahi-net.or.jp/~ef2o-inue/shiki/sub03_030_09.html 本件は3つまでのようであるのでこの点は問題ない。 (2)問題は(常識的には)RANK関数を使うとして、同じ数値がある場合、Rankの数値は、同じ番号を振られることである。 そして次の順位は飛ばされて振られることである。 (下記例参照。)下記例では3がない。 A1:B8 数値 順位 21 4 23 2 1 7 2 6 23 2 34 1 16 5 (2)それが気に食わない場合は >エクセル・RANK関数で同一順位でも次の順位を飛ばさずに表示する http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1222651577 を参考に、式を変えて、設定すればよい。Rank関数は使わないということ。 (3)範囲指定は、上例ではA2:B8を指定し、A2セルがアクチブになっている ことを注意して式を登録すること。 (4)設定操作は、ホームー条件付き書式ー新しい書式ルールー数式を使用して書式設定するセルを決定 (5)式は、上の例では =RANK(A2,$A$2:$A$10)=1 書式 塗りつぶし 黄色 =RANK(A2,$A$2:$A$10)=2 書式 塗りつぶし 水色 =RANK(A2,$A$2:$A$10)=3 書式 塗りつぶし 緑色 と3回重ねて設定する。 $A$2:$A$10の部分には番地に$を付ける(絶対番地指定して範囲指定の番地が動かないようにする)こと。

mlgt110
質問者

お礼

ご回答有難うございます。 確かに、同一順位のものが発生しうることがありますね。 その際の対応をお教えいただき有難うございます。 参考にして作表したいと思います。 有難うございました。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.2

Ctrlキーを押しながら、C8,E8,G8,I8セルだけを選んで、右クリックし、名前の定義で、名前をrankにします。 C8セルを選んで、条件付き書式の数式欄に、以下を記入し、書式の塗りつぶしに黄色を指定します。 =RANK(C8,rank)=1 新規ルールを追加して、以下を記入し、書式の塗りつぶしに水色を指定します。 =RANK(C8,rank)=2 新規ルールを追加して、以下を記入し、書式の塗りつぶしに緑色を指定します。 =RANK(C8,rank)=3 C8セルを選んで、クリップボードの「書式のコピー/貼り付け」をクリックしてから、E8セルをクリック。 C8セルを選んで、クリップボードの「書式のコピー/貼り付け」をクリックしてから、G8セルをクリック。 C8セルを選んで、クリップボードの「書式のコピー/貼り付け」をクリックしてから、I8セルをクリック。

mlgt110
質問者

お礼

ご回答有難うございます。 名前の定義という操作を初めて知りました。 とても便利ですね。 教えて頂いた方法で、無事対応できました。 有難うございます。

noname#231195
noname#231195
回答No.1

Rank関数を使って条件を作ればいいです。 Rankが1のときは何色、2の時は何色、3の時は何色、という条件にするわけですね。 詳しくはここに↓ http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12105538837 ・・・これは知恵袋の方が役に立つってことなんだろうか?

mlgt110
質問者

お礼

ご回答ありがとうございます。 お教えいただきました縦並びの順位付けはでき、 良く理解できました。 今回の質問は、横並びの数字の飛び飛びの列で順位付け する方法がよく分かりませんでした。 今回お教えいただきましたものも、使う頻度が高くありそうなので、 今後参考にさせていただきますね。 有難うございます。

関連するQ&A

専門家に質問してみよう