• ベストアンサー

エクセルの関数:列末尾のデータ参照

エクセルの関数で列末尾のデータ参照をしたいのですが、 ご存知のかたがおられたら教えていただけませんでしょうか。。。。 1あ 2い 3う 4え 末尾参照:=end_date(row1) のようなことです。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 回答No3です。  申し訳御座いません、先程の回答の中に一部誤りが御座いました。  参照するデータが文字列データである場合の関数は、 =IF(COUNT(A:A),LOOKUP(9E+307,A:A),"") ではなく、 =IF(COUNTIF(A:A,"*?"),INDEX(A:A,MATCH(CHAR(1),A:A,-1),0)) です。

hatokamome
質問者

お礼

お礼遅くなり申し訳ございませんでした。 ご回答ありがとうございました。 皆様のおかげで、考え方がわかりましたので、 自分の用途にあった、方法が思いつきました。 ありがとう御座います。

その他の回答 (3)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 下記は、列の途中に空白のセルが存在していて、データが入力されているセルが連続していない場合でも有効な方法です。  今仮に、A列の末尾のデータを参照するものとしますと、参照するデータが数値データである場合には次の様な関数となります。 =IF(COUNT(A:A),LOOKUP(9E+307,A:A),"")  又、参照するデータが文字列データである場合には次の様な関数となります。 =IF(COUNT(A:A),LOOKUP(9E+307,A:A),"")  そして、参照するデータが数値データなのか、それとも文字列データであるのかが決まっていない場合には次の様な関数となります。 =IF(COUNT(A:A)+COUNTIF(A:A,"*?"),INDEX(A:A,MAX(IF(COUNT(A:A),MATCH(9E+307,A:A),0)),IF(COUNTIF(A:A,"*?"),MATCH(CHAR(1),A:A,-1),0)),"")  因みに、ネット上にはCHAR(1)の代わりに、"*?"を使用している例もありますが、"*?"を使用した場合には、列の中に入力されている文字列の中に、「CODE関数を使って文字のコード番号を求めた際に42以下の番号となる様な文字」から始まっている文字列や、「-」で始まっている文字列が含まれていた場合には、正しい結果を得られませんので注意して下さい。

回答No.2

検索ぐらいしましょう。類似の質問がいくつもいくつも過去に出ています。 https://www.google.co.jp/search?q=excel+%E9%96%A2%E6%95%B0+%E6%9C%80%E7%B5%82%E8%A1%8C+%E5%8F%96%E5%BE%97 対象がA列だとして、途中に空白がなければ単に =INDEX(A:A,COUNTA(A:A))」 空白がある場合は少し長くなったりトリッキーになったりします。まあ検索で出たサイトを見ればいくつも方法は示されてるのでお好みで選んでください。

  • jun5xxx
  • ベストアンサー率0% (0/1)
回答No.1

Ctr+矢印キーで入力セル上にいるときはNULL前までのセル、NULL上にいるときは入力セルまでジャンプできる機能があるはずです。関数単体で値を取りたい場合はちょっとわかりません。 マクロの話でいいなら、以下のサイトに同じような問題がありました。 http://www.happy2-island.com/excelsmile/smile03/capter00702.shtml

関連するQ&A