• ベストアンサー

エクセル関数の質問    対象範囲の中で、一番上の行の値を返す関数

A1~A9までの9つのセルに、A9からA1へと下からデータが連続して埋まっていきます。 この範囲で値の入っている最上のセルの値を返す関数は作ることができませんでしょうか? 行は100行くらいになる予定です。 最下の行を返す関数は見つけました。同じように作れないでしょうか?   =INDEX(A:A,COUNT(A:A)) よろしくお願いします

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

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

>A1~A9までの9つのセルに、 なのに >行は100行くらいになる予定です の意味がよく理解できませんが、 A1:A9の範囲で値が入力されている一番上のセルの値を求める式の一例は少し難しくなりますが以下になります  =INDEX(A:A,MIN(INDEX(SUBSTITUTE((A1:A9<>"")*1,0,10^5)*ROW(A1:A9),))) たぶんもっと簡単な式を教えてくださる回答者様も出ると思いますよ

bigzeny
質問者

お礼

おお!回答いただきましてありがとうございました!! >の意味がよく理解できませんが、 質問が中途半端ですみませんでした。 A1~A9 で回答いただければ、数式の範囲を変更すれば いいと思って質問させていただいたしだいです。 実際は、L15:L79~L115くらいと言う範囲でしたので、、(笑) 実際テストして動きました。ありがとうございました。2時間くらい ネットで関数のページを探し回って分からなくて困っていたところです。 スッゴク助かりました。レアな質問だったかもしれませんが 同じ疑問を持った人がいたら役に立つと思います。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

noname#96418
noname#96418
回答No.3

>A9からA1へと下からデータが連続して埋まっていきます。 >最下の行を返す関数は見つけました。同じように作れないでしょうか? >=INDEX(A:A,COUNT(A:A)) であれば =INDEX(A:A,10-COUNT(A:A)) でどうでしょう。

全文を見る
すると、全ての回答が全文表示されます。
noname#204879
noname#204879
回答No.2

{=INDEX(A1:A100,MIN(IF(ISNUMBER(A1:A100),ROW(A1:A100),"")))}

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルの質問。  対象範囲の中で、一番下に位置する値を返す関数。

    例えば… A1~A9までの9つのセルに、A1=100,A5=120,A6=20という3つの値が入っています。 A1~A9の範囲で一番下にある値を表示(ここではA6の20という値)するような関数ってあるのでしょうか?

  • エクセルのカウント関数について教えて下さい

    おはようございます エクセルのカウント関数について教えていただきたいです。 A1セルに 「A10セル~Aデータ最終行の範囲に 入力されている数値を数えて表示」 させる式を入力したいのです。 COUNTの範囲として 「(RANGEで)A10からAデータ最終行を取得」しても エラーがでてしまいました。 良い方法がありましたがお教えください

  • 連続しない範囲で一番右に値のある一番上のセル

    連続しない範囲で一番右の値のある一番上のセルの関数 エクセルの関数について教えてください。 下記表のようにGX列に、連続しない特定の範囲 (R4,AD4,AP4,BB4,BN4,BZ4,CL4,CX4,DJ4,DV4,EH4,ET4)で 「い」列の一番右に値のあるセルの年月を表示させる方法はありますでしょうか? 非表示のセルにも数値が入っていたり、2行目には「い」列があったりします。 年月はセルの結合をしています。 いろいろ調べて試してみたのですが、うまくいきませんでした。 何卒、ご教授よろしくお願い致します。

  • Excelで範囲の中の300~400までの数値の数を数えるには?

    こんにちは。 EXCELでそのセル範囲の中にある例えば300~400までの値の 数を数えるにはどうすれば良いのでしょうか? count関数だけでは駄目ですよね。。。 お願いします。

  • Excel(2000)で行毎にセルをみて、値を返す

    例えば、以下のようなデータがあったとして、各行毎に左から見た結果、最初にデータがあったセルの列の1行のセルの値を各行のG列に返したい。 ______A__B__C__D__E__F__G__ 1行_ア__イ__ウ__エ__オ__カ____ 2行_1__3__5__2__4__1__ア__ 3行_____2__5__1__5__4__イ__ 4行_____________2__8__2__エ__ 5行_____2______2__1__4__イ__ 6行_________5______2______ウ__ G列に結果。 例えば、G3のセルに何らかの関数を入れて、A3~F3を左から見た結果、B3に2というデータがあるので、その列の1行であるB1の値、イをG3に返すといったないようです。 _ は、スペースをとるためのものです。 実際のデータは500行あり、各行の検索する列数は23列あります。 よろしくお願い致します。

  • excelでの対象範囲行削除

    excel2010 Aセルに入っている文字列で比較し、範囲抽出するマクロを作成しょうとしています。 何をやりたいかは、次の通りです。 Aセルに見出しがついた行を先頭に、次の見出しの1行前までを 行で抜出したいのです。 例 下記はAセルのデータのみを表示しています。 1行目 TEST_a 2行目  3行目  4行目 TEST_b 5行目  6行目  7行目  8行目 TEST_c 9行目  10行目 TEST_d 11行目 1~3行までを1つ目、4~7行を2つ目、8~9行を3つ目、10~11を4つ目で抜き出したいのです。 まず、4~7行目を抜き出すマクロは、 1~3行までを削除と下から8行目までを削除と考えました。 上から不要な部分を削除(1~3行までを削除)するマクロは下記の通りです。 Sub sample1() ' ' 上から下に検索 ' Dim x Range("A1").Activate '最初のセル Do Until ActiveCell.Value = "TEST_b" 'TEST_bが現れるまで x = ActiveCell.Value If x <> "TEST_b" Then 'TEST_bでないなら ActiveCell.EntireRow.Delete 'その行を削除する Else ActiveCell.Offset(1).Activate '次の行 End If Loop End Sub これは、正しく動作します。 上記を応用し、下から削除するマクロは次の通りとしました。 Sub sample2() '下から検索 Do Until ActiveCell.Value = "TEST_c" 'TEST_cが現れるまで y = Cells(ActiveSheet.Rows.Count, "A").End(xlUp).Row 'データ最下行取得 y = ActiveCell.Value If y <> "TEST_c" Then 'TEST_cでないなら ActiveCell.EntireRow.Delete 'その行を削除する Else ActiveCell.Offset(-1).Activate '次の行 End If Loop End Sub このsample2を実行すると、応答が返ってきません。 何が悪いのか、どの様にしたら正しく動作するのか教えていただきたく。(1) また、smple2だとTEST_cの行は残ってしまいます。 なので、下からTEST_cまでを削除するマクロは、 どの様に記述したらよいか教えていただきたく。(2) 以上2点、よろしくお願いします。 ※マクロは初心者です。いろいろWEBで調べてみたのですが、いきづまりました。

  • excel関数を用いてある行の範囲内の数値のみを違う行に抽出し、同じ列に対応する値も引っ張ってくることは可能ですか?

        A   B   C   D 1   33   180 2   58   300 3   89   310 4   152   240 5   205   74 上のような表になっている時に、EXCEL関数を用いて、[A]行の「60以上、180以下の数値」のみをC列に引っ張ってきて、なおかつ[A]行のそれぞれの値に対応する[B]行の値をD行に引っ張ってくることは可能でしょうか? 理想的な結果として   A     B      C      D 1   33  180     58    300 2   58   300    89    310 3   89   310    152    240 4   152   240 5  205  74 というようになってほしいのです。 オートフィルターの範囲指定を用いると、C行に範囲内の値を引っ張ってくる事は出来たのですが、関数ではない為、他の表に応用が効かず、毎回フィルターをかけなくてはいけなかったです…そのため出来れば関数を使いたいのですが、何か方法は無いものでしょうか…

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

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

  • エクセルでHLOOKUP関数の選択範囲について

    エクセルでHLOOKUP関数を使って、検索したいのですが、 シートは、一覧表のシートと データが入っているA101、B203、C305、...シートは300シートくらいあります。 一覧表のシートには、下のような表になっていて、      A列  B列  C列  D列 ...          1003、1004、1005、1006、... 2行目 A101  3行目 B203 4行目 C305       .       .       . データのはいっているシート、A101は下の表になっています。      B列 C列 D列、・・・、Z列 2行目 1004、1005、1006、... 3行目 100、 200、 150、... 一覧表のB列の2行目には HLOOKUP(B2、シートA2のB2:Z3、2行目、FALSE) という感じで、シート名をセルA2のものを参照にして 探して表示させ、B列、C列、D列の2行目から下の行も 表示させたいのですが、うめくできませんでした。 INDIRECT関数を使ってみましたが、セル範囲が無効という エラーがでてしまいます。↓こんな感じで入力してみたのですが... SUMPRODUCT((INDIRECT($A2&"!$B$2:$Z$3"))=$B$1,(INDIRECT($A2&"!$B$2:$Z$3"))) 1つづつデータを見て手打ちはデータが多く、 どんどんデータが増えていくので できれば関数を使って表示させたいと思っています。 詳しい方いらっしゃいましたら、どうか教えてください よろしくお願いします。

  • エクセル関数の範囲指定を、座標数値で指定したい

    address関数とindirect関数で、行・列を数値で指定して、セルの値が求められますが、同じように行・列の数値を4つ使って範囲の指定をしたいのですが、どのような関数を使えばよいでしょうか? 具体的には、=MATCH(A1,範囲,1)の範囲を、2組の座標の数値で指定したいのです。

専門家に質問してみよう