■エクセル上で数字に順位を付けて上位(下位)3位までの数字に色を付けたい。
■現在の方法
書式→条件付書式
条件1
セルの値が次の値に等しいを選び、
関数「=LARGE($C$6:$C$100,1)」と入力し、書式で文字の色を指定。赤色
条件2
セルの値が次の値に等しいを選び、
関数「=LARGE($C$6:$C$100,2)」と入力し、書式で文字の色を指定。青色
条件3
セルの値が次の値に等しいを選び、
関数「=LARGE($C$6:$C$100,3)」と入力し、書式で文字の色を指定。緑色
■問題点
1番大きい数字が2つある場合、2箇所が赤色になり、2番目に大きい数字が緑色になる。青色は使われない。
(順位で言うと同率1位が二つ、2位が飛ばされて3位が一つと処理される(1位・1位・3位))
■やりたい事
1番大きい数字が2つある場合2箇所とも赤色にし、2番目に大きい数字を青色、3番目に大きい数字を緑色にしたい。
(順位で言うと1位・1位・2位・3位と言った具合にしたい)
もし2番目に大きい数字が3つあってもその3箇所を青色にして、3番目に大きい数字を緑色にする。
(順位で言うと1位・1位・2位・2位・2位・3位の様な感じ)
具体的に言うと
現在
10
20
30→緑色
40→赤色
40→赤色
これを
10
20→緑色
30→青色
40→赤色
40→赤色
にしたいのです。
■補足
表の範囲はC6~C100としていますが、実際はC30までしか使っていなく、それ以降は日々データを記入するので拡張用としている。
使用しているエクセルはエクセル2002です。
よろしくお願いします。
No.1
- 回答日時:
簡単な関数だけで結果を得るなら。
一位の数字は今のままでもいいですが
=MAX($C$6:$C$100)
でいいです。
二位の数字は
=LARGE($C$6:$C$100,COUNTIF($C$6:$C$100,MAX($C$6:$C$100))+1)
三位の数字は
=LARGE($C$6:$C$100,COUNTIF($C$6:$C$100,">="&LARGE($C$6:$C$100,2))+1)
などのように拾ってくることができます。
それぞれ「次の値に等しい」に与えます。
素早い回答ありがとうございます。
2位の方法はMAX関数で1位の数を調べ、それに+1する事で次が何位になるのか分かるので、
それをLARGE関数で抜き出すと言う風に解釈しました。
同率1位がいくつあろうと、その次の順位を抜き出すのはややこしい手順が必要なんですね。
No.2
- 回答日時:
自分は計算の誤差にならない微少な数字を各値に加えちゃいます。
10 → 10 + 0.000001
20 → 20 + 0.000002
30 → 30 + 0.000003
40 → 40 + 0.000004
40 → 40 + 0.000005
面倒なのでROW関数を使って
10 → 10 + ROW()/1000000
20 → 20 + ROW()/1000000
30 → 30 + ROW()/1000000
40 → 40 + ROW()/1000000
40 → 40 + ROW()/1000000
と、しちゃうかな。
でもって、微少数値を加えた後でLARGE関数を使うとかします。
回答ありがとうございます。
今回は同率1位を両方とも赤色にした上で次の順位を青色と言った具合にしたかったので、
質問の仕方が悪かったのかも知れませんが、この方法は同率1位を回避する事に使えそうです。
一つの参考になりました。
No.3
- 回答日時:
ANo.1様の方法ですと、一位の数字と二位の数字の方法に関しましては、大変優れた方法だと思います。
但し、三位の数字の方法に関しましては、一位の数字が複数存在している場合には、誤った動作をしてしまいます。
ですから、三位の数字の場合は
=LARGE($C$6:$C$100,COUNTIF($C$6:$C$100,">="&LARGE($C$6:$C$100,2))+1)
ではなく、
=LARGE($C$6:$C$100,COUNTIF($C$6:$C$100,">="&LARGE($C$6:$C$100,COUNTIF($C$6:$C$100,MAX($C$6:$C$100))+1))+1)
等とする必要があります。
回答ありがとうございます。
この方法を使う事で解決しました。
3位の方法は自分なりに解釈しようとしたのですが、特に大なりイコールとアンドで結ばれている所が分りませんでした。
解釈は出来ていませんが解決は出来ました。ありがとうございます。
ベストアンサーに非常に悩んだのですが、ベストアンサーが1つしか選べないので申し訳ないです。
No.4ベストアンサー
- 回答日時:
ありゃりゃ。
とんだ手抜かりを。んでは簡単じゃない数式を使った方法で。
それぞれ「次の値に等しい」で
1位:
=LARGE(IF(FREQUENCY($C$6:$C$100+0,$C$6:$C$100+0),$C$6:$C$100),1)
2位:
=LARGE(IF(FREQUENCY($C$6:$C$100+0,$C$6:$C$100+0),$C$6:$C$100),2)
3位:
=LARGE(IF(FREQUENCY($C$6:$C$100+0,$C$6:$C$100+0),$C$6:$C$100),3)
失礼しました。
別の方法での回答ありがとうございます。
この方法を使うと出来ましたが、ちょっと参照量が多くなると動作が重くなってしまいました。
FREQUENCY関数と言うのは初めて見たので、理解は出来ていませんが方法の一つとして参考になりました。
No.3のkagakusuki様の補足もあり、最初に回答された方法と併せて解決しました。
ありがとうございました。
No.5
- 回答日時:
添付図参照
1.セル B1 に式 =IF(COUNTIF(A$1:A1,A1)>1,"",A1) を入力して、
此れを下方にズズーッとドラッグ&ペースト
2.セル A1 に次の[条件付き書式]を設定して、範囲 A2:A5 に
[書式の貼り付け]を実行
条件1
数式が =RANK(A1,B$1:B$5)=1
フォント色 赤
条件2
数式が =RANK(A1,B$1:B$5)=2
フォント色 青
条件3
数式が =RANK(A1,B$1:B$5)=3
フォント色 緑
回答ありがとうございます。
出てきた数字を調べてBに書き出す(同じ数字は2回目以降は空白)
Aセルの値をBに書き出した数字でランク降順にして、それぞれ1位・2位・3位となった場合にそれぞれ色を付ける。
と言った風に解釈しました。
色んなやり方で出来るのですね。どれも思いつかない方法だったので助かりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 7 エクセルで重複データから抽出したい 2 2022/05/18 23:31
- Excel(エクセル) エクセルで書式設定とフィルタの組み合わせでうまく行かないのですが 4 2022/10/07 10:02
- Java Java 南京錠 2 2023/02/04 11:46
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:00
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:02
- Excel(エクセル) エクセル、日々の集計整理方法。(再送です。) 5 2022/10/02 00:19
- 数学 写真の問題の(4)についてですが、例えば赤のカードにおいて、他の数字は1枚ずつのままで5が2枚(他の 4 2023/07/29 03:49
- Excel(エクセル) マクロ、条件付き書式のfont.color 1 2023/03/28 01:10
- その他(Microsoft Office) EXCELのセルへの色づけ 2 2023/06/07 01:22
- Excel(エクセル) エクセルの条件付き書式で*を使いたい 4 2022/05/13 16:49
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
エクセルで同率の順位の人が表示されない
Excel(エクセル)
-
エクセルRANK関数の同率順位を別表に抽出する時
Excel(エクセル)
-
Excelで最大値の入っている数値の右側にある項目名を拾いたい。
その他(Microsoft Office)
-
-
4
LARGE関数 飛び飛びの範囲を指定
Excel(エクセル)
-
5
MATCH LARGE などで重複を防ぐには
Excel(エクセル)
-
6
EXCEL関数:重複した値がある並び替えについて
Excel(エクセル)
-
7
エクセルで円グラフに引き出し線が出るものと出ないものがある
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでの作業計算方法について
-
Microsoft1Officeの互換ソフト...
-
【マクロ】その時、その時で変...
-
はがきについて。
-
【マクロ】読取専用のファイル...
-
エクセル初心者です 関数の入れ...
-
【関数】適切な文字数の数字を...
-
LOOKUP関数を使えばいいのでし...
-
【関数】先頭だけにある、半角...
-
Excel ピボットテーブルで日付...
-
Excelのpivotについて質問です
-
時間によってファイル名が変わ...
-
エクセル 白黒印刷で白線を印刷...
-
Aというブックの1というシート...
-
エクセル関数を教えてください
-
WPS OFFICEでの縦書きについて
-
Excelのチェックボックスの使い...
-
エクセルの条件付き書式につい...
-
エクセルのセルに同じ大きさの...
-
エクセルの関数について教えて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報