• 締切済み

Excelで特定の数字の間にあるセルの数を数える方法

A1:A20に順に 11、10、25、66、48、84、33、31、46、78、44、60、87、86、59、83、64、43、43、25 と20の数値が入っています A3にある25とA20にある25との間のセル数(例の場合16)を数える方法を教えてください。 作業列に25のあるセルの行番号を出す方法、=IF(A:A=25,ROW(),"")は、わかったのですが、これをどのように使えば25の間のセル数を数えられるかわかりません。 実際の数は、1000行ほどあり特定の数値は2つしかないがその位置は決まっていないのです。

みんなの回答

回答No.7

=MATCH(1,INDEX(0/(A:A=25),0))-MATCH(25,A:A,0)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.6

例えばA1セルからA1500セルまでの間でB1セルに入力した数値と同じ特定の数値の間に挟まれたセルの数は次の式を例えばB2セルに入力することで表示されます。 =MATCH(B1,INDIRECT("A"&MATCH(B1,A1:A1500,0)+1):A1500,0)-1

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.5

作業列を使わない方法です  =IF(COUNTIF(A:A,25)>1,MAX(INDEX((A1:A1000=25)*ROW(A1:A1000),))-LARGE(INDEX((A1:A1000=25)*ROW(A1:A1000),),2)-1,"25が1個以下です") 上記式は最終の「25」と一つ前の「25」との間のセルの数を数えます。 >特定の数値は2つしかない であれば期待する値になるはずです。

noname#204879
noname#204879
回答No.4

[回答番号:No.3]の 「入力したセル A1 を」は「入力したセル B1 を」に読み替えてください。

noname#204879
noname#204879
回答No.3

「作業列」をB列とし、式 =IF(A:A=25,ROW(),"") を入力したセル A1 をズズーッと下方にドラッグ&ペーストしたのなら、式 =MAX(B:B)-MIN(B:B)-1 で簡単に求まりますね。

  • popuplt
  • ベストアンサー率38% (31/81)
回答No.2

1つ目の[25]を見つけて、その下の範囲から2つ目の[25]をさがす。 =MATCH(25,OFFSET(A1,MATCH(25,A:A,0)+1,0,COUNT(A:A),1),0)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんにちは! 回答になっているかどうか分かりませんが・・・ 質問内容の数式だと B列に A列の値が25の場合の行番号が表示されていて、それ以外は空白という事ですよね? もしそうであれば、考え方として 行番号の大きな方から行番号の小さい方を引けば、その差が出ますので その間のセル数は、差から1を引いた数になるはずです。 すなわち、表示したいセルに =INDEX(B:B,LARGE(B:B,ROW()))-INDEX(B:B,SMALL(B:B,ROW()))-1 という数式を入れてみてはどうでしょうか? なんか無理矢理って方法ですが、 他に良い回答があれば無視してくださいね。 どうも失礼しました。m(__)m

関連するQ&A