電子書籍の厳選無料作品が豊富!

式ROW($B$4:$B$23)/($C$4:$C$23=$C4)の説明を分かり易く説明をお願いします。
C4の値が「チューリップ」のときを例として説明いただけると有難いです。

A 回答 (2件)

こんにちは



エクセルのバージョンによって計算の意味が少し異なります。

365等であれば、配列計算をしてくれるので、各行の計算結果を返します。
例えば n行目で言えば
 =ROW($Bn)/($Cn = $C4)
を計算しますので、分母の部分はCnセルが「チューリップ」ならTRUE(=1)、そうでなければFALSE(=0)として扱われます。
この結果、C列がチューリップの行はその行番号が、そうでない行は #DIV/0! となる配列が返されます。
(ご提示の式の場合、最初の4行目に関しては必ず4が返ります)
どこかのセルに、ご提示の式に「=」を付けて入力してみれば、結果が下方にスピルされるでしょう。

それ以前のバージョンの場合は、そのままの式だと、セル範囲に関しては最初のセル値を代表値として採用しますので、ROW($B$4:$B$23)は4と解釈されますが、($C$4:$C$23=$C4)の部分は計算できないので、#VALUE! 値として扱われ、結果は#VALUE! となります。
配列計算であることを明示してあげれば、配列計算として前記と同様の計算を行いますが、結果は代表値(=最初の値)を採用します。
例えば、配列数式として上記同様に入力すると、最初の値である4が返ります。


想像するところ、ご提示の式は複合式の一部なのであろうと思いますが、C4と合致する行を抜き出したいのか、合致する個数を数えたいなどではないかと想像しますけれど・・・
(実際がどのような式なのかわからないので、何ともわかりませんが)

数を数えたいのなら、COUNTIFなどでできますし、一致する行を検索したいのなら、MATCH関数等でも可能です。
一致するものを全て抽出したいであれば、365ならFILTER関数を使えます。
それ以前のバージョンの場合は、いずれにしろ配列計算であることを明示する式にしておかないと、計算はしてくれません。
(配列数式で設定したり、SUMPRODUCTなどの配列計算用の関数を使うなど)
    • good
    • 0

ROW($B$4:$B$23)は配列なので、そのまま配列と認識してくれるエクセルなら、ですか??


配列認識して呉れるとして、この式をA1~A20に入れてる場合。
C4とC4が等しければ、A1にはC4の行番号である4が入ります。
C5とC4が等しければ、A2にはC5の行番号である5が入ります。
C6とC4が等しければ、A3にはC6の行番号である6が入ります。

以下同じ
等しくなければ、0割エラーが入ります。

何をしたい式なんでしょうね・・・。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A