Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7 Professional : Excel 2010)
RANK関数で同じ順位をさけたい
投稿日時: 18/01/25 16:37:44
投稿者: 純

よろしくお願いいたします。
 

3	L3	M3	N3	O3	P3	Q3	R3	S3	T3	U3	V3	W3
4	1月		2月		3月		4月		5月		6月	
5	計画	前年	計画	前年	計画	前年	計画	前年	計画	前年	計画	前年
6	14	10	21	12	32	13	41	15	46	40	51	50
7	220	200	340	300	440	400	490	480	540	500	568	530
8	3	0	5	0	5	0	5	0	15	0	5	

 
上記の表で1月から6月の計画で、前月より下回る計画(単月計画ではなく累計のため)
を立てていないかチェックしています。
 
AV5セルに下記の式を入れて右にコピーしています。
=IFERROR(RANK(L5,($L5,$N5,$P5,$R5,$T5,$V5),0),"")
AV6セルに
=IFERROR(RANK(N5,($L5,$N5,$P5,$R5,$T5,$V5),0),"")
 
そしてランクを1から6まで付けて判定しようとしたのですが
 
ただ8行目のように同じ数字の計画があるときランクがうまくいきません。
 
どのようにしたら1月から6月の計画が前月より下回っていないと判断できるでしょうか?
 
必ずしも前月比較だけではなく下記のように
 
92 158 270 258 260 312
 
3月より4月が減で、4月より5月が増えているけど6月が3月より低いというのもチェックしたいです。
 
どうぞよろしくお願いいたします。
 
 

回答
投稿日時: 18/01/25 17:06:56
投稿者: Mike

私のブラウザではなんだか間延びしているように見えているので、確認させてください。

  L  M  N  O  P  Q  R  S  T  U  V  W
4  1月    2月    3月    4月    5月    6月 
5 計画 前年 計画 前年 計画 前年 計画 前年 計画 前年 計画 前年
6  14  10  21  12  32  13  41  15  46  40  51  50
7 220 200 340 300 440 400 490 480 540 500 568 530
8  3  0  5  0  5  0  5  0  15  0  5
貴方が掲げられた表は上表と同じことでしょうか?

投稿日時: 18/01/25 17:14:37
投稿者: 純

Mike さま
 
お世話になります。
 
申し訳ありません。行番号を付け間違えました。
 
月・・・3行目
計画・前年・・・4行目
 
それと下の記述は
 
3月より4月が減で、4月より5月が増えているけど6月が3月より低いというのもチェックしたいです
 
5月が3月より低いの間違いです。
 
どうぞよろしくお願いいたします。

回答
投稿日時: 18/01/25 21:48:14
投稿者: んなっと

とびとびのデータのときは、いったん表を整形・抽出してから処理しましょう。
直接処理すると、面倒な式になります。
  
そんなわけで、以下は悪い例です。
   
   L   M   N   O   P   Q   R   S   T  AV  AW  AX  AY
3  1月     2月     3月     4月     5月  2月  3月  4月  5月
4 計画 前年 計画 前年 計画 前年 計画 前年 計画 計画 計画 計画 計画
5  14  10  35  12  20  13  30  15  29     ↓  ▽  ↓   
6  220  200  340  300  440  400  490  480  540            
7   3   0   5   0   5   0  20   0  15     ↓     ↓
   
AV5
=IF(INDEX($L5:$W5,2*COLUMN(A:A)-1)>=INDEX($L5:$W5,2*COLUMN(A:A)+1),"↓",IF(COUNT(INDEX(0/(COLUMN($L:$W)<COLUMN($L:$L)+2*COLUMN(A:A))/($L$4:$W$4="計画")/($L5:$W5>=INDEX($L5:$W5,2*COLUMN(A:A)+1)),)),"▽",""))
右方向・→

回答
投稿日時: 18/01/25 23:30:50
投稿者: Mike

純 さんの引用:
行番号を付け間違えました。
5月が3月より低いの間違いです。
こういうことがあると、回答の意欲を喪失します。サヨナラ。

回答
投稿日時: 18/01/26 08:15:48
投稿者: んなっと

表を整形・抽出というのはこんな感じです。
 
AV5
=INDEX($L5:$W5,2*COLUMN(A:A)-1)
右方向・→下方向・↓
 
   AV  AW  AX  AY  AZ  BA
3  1月  2月  3月  4月  5月  6月
4 計画 計画 計画 計画 計画 計画
5  14  35  20  30  29  51
6  220  340  440  490  540  568
7   3   5   5  20  15  16
 
AW5:BA7を選択して
条件付き書式 新しいルール 
 数式を利用して〜
 =COUNTIF($AV5:AV5,">="&AW5)
 書式 塗りつぶし 緑
条件付き書式 新しいルール
 数式を利用して〜
 =AV5>=AW5
 書式 塗りつぶし 黄

投稿日時: 18/01/26 08:16:00
投稿者: 純

んなっと さま
 
いつもありがとうございます。
 
表を整形してやり直してみます。

投稿日時: 18/01/26 08:50:32
投稿者: 純

Mike さま
 
返信いただきありがとうございます。
 
今後は気をつけます。
 
 
んなっと さま
 
無事出来ました!
 
いつも本当にありがとうございます。