• ベストアンサー

EXCELの関数 数値の集計

ある数値を集計しています。 上から順に検索していき、ある値以上の数値が初めて現れた行番号を返すような関数はありますか? 例えば 1  38 2  56 3  80 4  44 5  60 6  70 7  53 8   5 と数値が入っていて、60以上という設定にすると「3」が返ってくるような関数です。 宜しくお願いします。

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

  • ベストアンサー
noname#176215
noname#176215
回答No.2

A列で良いんでしょうか。 =MATCH(1,INDEX((A1:A100>=60)*1,0),0) こんな式はいかがですか? 60以上が全くない時に エラーが起きますが その辺は IFで対処して下さい。

aoikokoro
質問者

お礼

ありがとうございます。 この方法で、目的の数値を出すことができました。 勉強不足の為、関数の意味が理解できていませんが、答えが出て、ほっとしています。 本当にありがとうございました。

その他の回答 (3)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.4

=MIN(IF(B1:B7>=60,1,65537)*ROW(B1:B7))-ROW(B1)+1 をSHIFT+CTRL+ENTERで入力します。 最後の -ROW(B1)+1 の部分は、データのある場所が1行目から始まっていない場合のものですので、1行目から始まる場合は必要ありません。

aoikokoro
質問者

お礼

回答ありがとうございます。 試してみたのですが、うまくできませんでした。申し訳ありません。 勉強不足で、この関数の意味が分からない状態ですので、もう少し勉強したいと思います。 ありがとうございました。

noname#176215
noname#176215
回答No.3

ANo.2 の者です。 下の式だと間に空白セルがあって「以下」などの設定を した時に変なことになりそうなので =MATCH(1,INDEX((A1:A100<60)*(A1:A100<>"")*1,0),0) に訂正願います。

aoikokoro
質問者

お礼

再度の回答ありがとうございました。 たまたま、今回集計した表では空欄も無く、60以上の数値が全く出てこないという状況でもなかったため、#2の回答で正しい数値を算出することができましたが、より完璧なものとして、参考にさせていただきます。 ありがとうございました。

  • OMP
  • ベストアンサー率23% (132/553)
回答No.1

あまり格好よい方法ではありませんが、以下の方法で可能です。 38,56,80などのとなりに「=IF(A1>=60,1,0)」と入力します。 ※A1の部分は数値が入ってるセルを入力します それを合計すればOKです。

aoikokoro
質問者

お礼

ごめんなさい。例の出し方が良くなかったようですね。 この計算方法ですと、最初に60以上の数値が出た時の行番号ではなく、全体の数値の中で60以上の数値の合計になってしまいますので、目的のものとは違う数値になってしまいました。 例が両方とも「3」になってしまうため、分かりにくかったかもしれません。 回答ありがとうございました。

関連するQ&A

  • エクセルの関数 数値の集計

    質問投稿日時:04/09/24 11:51質問番号:1014624 この質問番号と同じ内容に困っています。 マッチ関数とインデックス関数の複合で下記内容は理解出来たのですが、 例えば、下記内容に9行目があり・・克つそのデータが空欄だった場合で、算出条件を4以下にしたら本来エラーが出て欲しいのですが、 9行目・・つまり空白欄の回答を算出してきます。 これの対策方法ないですかね・・? 上から順に検索していき、ある値以上の数値が初めて現れた行番号を返すような関数はありますか? 例えば 1  38 2  56 3  80 4  44 5  60 6  70 7  53 8   5 と数値が入っていて、60以上という設定にすると「3」が返ってくるような関数です。 宜しくお願いします。

  • Excel 順不同数値の検索

    | A | B |   100 115   110   120   130   120   110   120 このように数値が順不同で並んでいるA列を上から検索して、 B1の値と同じ値かそれ以上になる行番号(かその値)をB2に表示させるには どのようにすればよろしいでしょうか。 (上記の場合ですと、3行目の120の値をB2に表示させたい。) 出来ればVBAは使わず関数だけで実現したいと考えています。 VLOCKUP、MATCH等々、検索関数を調べましたが出来そうで出来ません。 ご教示頂けますでしょうか。

  • エクセルの関数について

    エクセルの関数について教えて頂きたいです。 業務でエクセル(2000)で作成してある集計表があります。 その集計表の数値を別BOOKに反映させたいのです。 セルA1を検索値として、セルB1とセルB2の値を返す関数はありますでしょうか? 集計表の行数は約500行、並びはランダムでセルC1を検索値としてセルC2の値を返す 箇所もあります。一つの値を検索値として二つの値を返すことが出来ずに困っています・・・ 宜しくお願いします。

  • エクセルの関数について

    Windows Xp エクセル2003を使用しています。 業務で使用している集計表ファイルがあり、別ファイルにデータを反映させたいのです。 集計表のセルA1を検索値としセルB1とセルB2の値を返す関数はないでしょうか? 集計表のつくりは約1000行あり、セルA3を検索値としてセルB3の値を返す行もあります。 セルA5を検索値とし、B5、B6、B7、C5,C6の値を返す行など様々です。 こういったデータがランダムで表になっています。一つの検索値に対して、検索値の水平方向はvlookup関数で表示出来たのですが、 一つの検索値で2つの値を返す関数が分からず、困っています。 1行下や2行下を検索する関数も参考にしたのですが、集計表のつくりがランダムの為、検索してほしくないものまで表示されてしまうなど、ウマクできませんでした。 宜しくお願いします。

  • エクセル2003 集計機能について

    エクセルの機能で集計機能を使用しているのですが、(データ→集計)集計結果が上手く表示されなくなってしまいました。 一番最終行は総計となり、SUBTOTAL関数で合計を表記しますが、その総計の値が本来求めたい値の2倍の数値になっており、SUM関数で求めた値と同じになっているのです。本来SUBTOTAL関数が入っていれば、合計値は省き計算をしてくれると思うのですが。。。 今までは、上手く計算されていたのですが。。。 原因を教えて頂ければと思います。よろしくお願い申し上げます。

  • Excelで特定の数値が入った行の別列の数値を集計

    ExcelのA列にそれぞれ空白 or 1、2、3いずれかの値が入っています。 B列には行ごとに異なる数値(1、2、3、4)が入っています。 A列とB列の行数は同じです。 それぞれの数値を下記の通りにまとめたいと考えています。 ・A列に「1」が入っている行のB列の数値を集計し、その数をA100に入れる ・A列に「2」が入っている行のB列の数値を集計し、その数に1.5を掛けた値をA101に入れる ・A列に「3」が入っている行のB列の数値を集計し、その数に2を掛けた値をA102に入れる 上記はどのような計算式で実現できるでしょうか? よろしくお願いします。

  • エクセルで、セル内にスペースのある数値を集計したい

    数値の入ったセルが多数あり、それを集計したいのですが、その数値の右側に半角のスペースが入っているため、オートSUMが数値として認識せず、集計結果が0になってしまいます。 ここで類似の質問を検索しとところ、=LEFT(A1,LEN(A1)-1) という関数を使えばスペースを取ることができることを知り、やってみると、スペースは取れたのですが、なぜかまだ数値として認識されません。 そこでスペースの取れた値を、コピー&形式を選択して貼り付け(形式は「値」)で、また別のセルに貼り付けてもまだ、認識されませんでした。 ところが、各セルを一度クリックし、セル内に一度カーソルを点滅させてからエンターを押すと、(そのセルだけは)数値として認識しました。 数値は多数あるため、こんなことをしていて手間ばかりかかってしまうのですが、何かいい方法はないでしょうか?

  • Excelで数値範囲を設定して、他の数値を集計

    Excel2010です。 列、行でクロス集計を行う場合で、ピボットテーブルの行には数値フィールドAを設定して、これを「1未満」「1以上10未満」「10以上50未満」「50以上」という任意の範囲に分けて、それぞれの範囲に対応するレコードからフィールドBの合計値を集計したいです。 ピボットテーブルを使う必要があるかと思いますが、それ以外の方法でも構いません、やり方を教えてください。

  • Excel フィルタした値をセルに表示する関数

    図のような表をつくり、表にはテーブル書式を設定しています。 B列で社名でフィルターをかけると、C列、D列の数値の集計は、SUBTOTAL関数(109)で行っており、フィルターをかけた最終行にその集計数値が表示されます(下部画像のようになる)。 ついでに、B列の最終行に、フィルターをかけた値(ここでは文字列の"あいう会社")を表示させたいのですが、どの関数を使えばよいのかわかりません。 フィルターに使った文字列を抽出する関数、 あるいはフィルタした値は常にB列の上から2行目にくるので、 これを参照してB列の最終行のセルに表示させる方法 はあるでしょうか?

  • エクセルの集計について

    エクセルの集計について エクセルでのデータ集計でこのパターンが多いのですが、手作業でやると非常に稼動がかかりなんとか関数を使ってできないかと思いますが、考えても思い浮かびませんでした。 どなたかお知恵をお貸しください。 添付ファイルの「Sheet1」のA列の順番を入れ替えて「Sheet2」のようにしたいです。 (実際はもっと項目が多く、A列の項目も「Sheet1」と「Sheet2」は完全一致ではありません) できるかわかりませんが、「Sheet1」のA列から「Sheet2」のA列の項目を検索し、その行の数値を 「Sheet2」に入力するという関数があれば教えていただきたいです。 「Sheet1」は毎月データが変わるので、新しいデータをコピー&ペーストすれば「Sheet2」が完成するように関数を設定しておきたいです。 うまくやりたいことが説明できているか不安ですが、よろしくお願いします。

専門家に質問してみよう