• ベストアンサー

一番下がどこかを確認する関数を知りたいのですが・・・

タイトルではチョッとわかりにくいかと思いますが。。。 以下に簡単な例を記しておきますので、どなたかご教示おねがいします^^;       A列   B列   C列   D列 1行目 2行目    ○    3行目 4行目    ○        ○ 100行目       ○ 200行目                 ○ こういうようなシートがあったとします。 別シートの式で自動で○が入力される表なわけですが これらは、○があるセルもあれば、空白のセルもあります。 上のシートを例にすると、A列の一番下の○は4行目、B列は100行目、C列は4行目、D列は200行目、となっております。 一番下までの○が何行目になるのか。ということを知りたいのです。 もちろん自分で数えれば簡単にわかる結果ですが、これを自動で表示するような関数があればと思い、質問させていただきました。 私の知る関数の知識、また応用力ではお手上げ状態です、どなたかご存知の方、よろしくお願いします^^;

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

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

#1です。 ●A1:A999の範囲で値が"○"まはた"△"であるセルについて、最大の行番号  =SUMPRODUCT(MAX(((A1:A999="○")+(A1:A999="△"))*ROW(A1:A999))) ですね。 ・AND条件(論理積)のときは* ・OR条件(論理和)のときは+ になります。

mazdaFD3
質問者

お礼

deus_ex_machina様、深夜に早速ご回答いただけていたようで感謝いたします^^ 改めて、いただいた式を試してみたところ、期待通りの結果を得られました。 また、解説もいただけましたので、大変わかりやすく、今後自分自身でも活用できそうですので助かりました^^

その他の回答 (4)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.5

○か△どちらかの一番下の行数なら、たとえばA列内なら、行数がどこまであったとしても =MAX(IF(ISERROR(MATCH("○",A:A,0)),0,MATCH("○",A:A,0)),IF(ISERROR(MATCH("△",A:A,0)),0,MATCH("△",A:A,0))) でOKです。

mazdaFD3
質問者

お礼

merlionXX様、ご回答ありがとうございます^^ いただけた式を試してみたのですが、私の表が悪いのか、思った結果は得られませんでした^^; もうすこし私なりにいただけた式の関数を調べながら、応用して見たいと思います^^ 改めて、ありがとうございました^^

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.4

NO3です。 前回の回答では○、△のみに限定されていませんので訂正します。 =MAX(IF((Sheet1!A1:A300="○")+(Sheet1!A1:A300="△"),ROW(Sheet1!A1:A300),0)) 数式は配列数式の為、入力完了時にshift+ctrl+enterキーを同時押下して下さい。

mazdaFD3
質問者

お礼

mu2011様、ご回答ありがとうございます^^ 配列数式という単語を初めて見ましたので、難しさを感じましたが ご支持の通りshift+ctrl+enterキーを同時押しでうまくいきました。 今後応用して活用できるように努力してみます。 改めて、ありがとうございました^^

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

次の方法は如何でしょうか。 sheet2のA1に=IF(ISNA(MATCH("",sheet1!A:A,-1)),,MATCH("",sheet1!A:A,-1))を設定し、右方向にコピーして下さい。

noname#52504
noname#52504
回答No.1

例えば、 ●A1:A999の範囲で値が"○"であるセルについて、最大の行番号  =SUMPRODUCT(MAX((A1:A999="○")*ROW(A1:A999))) あるいは、  =INDEX(MAX((A1:A999="○")*ROW(A1:A999)),) など。 対象が複数列の場合も同様です。

mazdaFD3
質問者

補足

deus_ex_machina様、夜遅くに、早速のご回答ありがとうございます^^ 今回いただいた式で試したところ、期待通りの結果が得られました! 本来でしたら、補足ではなくお礼をつけて質問を締め切り・・・たいところなのですが・・・^^; 私の質問内容に抜け落ちている部分があり、改めて、、、追加でご質問させていただきたいのですが。。。 私の最初の質問では、一番下の○までの行数を数えたい、という趣旨だったのですが、○、もしくは△ と、いうような場合も対応は可能でしょうか?   ○か△どちらかの一番下の行数、という感じなのですが、列に関しては1列のみで大丈夫だと思います。 お手すきの時にでも、改めてよろしくお願いします^^;