[[20130618101715]] 『一番右側のデータのあるセルを認識して、その上に』(エクセル初級) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『一番右側のデータのあるセルを認識して、その上にあるテキストを返す』(エクセル初級)

いつもお世話になっています。

今回は、下記のような問題について、皆様のお知恵を拝借できればと思います。

  …C列 D列 E列 F列 G列 H列
―――――――――――――――――――――
2行│5月 6月 7月 8月 9月
3行│ 100    500       200 9月
4行│   400            6月
5行│       100 500     8月
6行│ 900              5月
7行│    300 100        7月
 ・
 ・
 ・

   
上記のような表があるとします。

解を出したいのは【H列】です。

各行のC列からH列の間で、

一番右側のデータのあるセルを認識して、

(3行目ならG3、6行目ならC6)

その上の2行目のテキストをかえす。

(3行目なら9月、6行目なら5月)

以上、このような関数を作ることは可能でしょうか。

拙い説明ではありますが、ご教授いただければと思います。

何卒、宜敷お願いいたします。


 C列からG列のデータが数値なら、

 H3=LOOKUP(10^16,C3:G3,$C$2:$G$2) 

 で。(tora)


早速ありがとうございます!!

追加でお伺いしたいことが2点ほど。

■「10^16」はどのような意味でしょうか?⇒「10の16乗」であることはわかりました。

■また、いちばん左側のデータを認識してかえす(3行目ならば5月、5行目ならば7月)のには、どのような式になりますでしょうか?

宜敷お願いいたします。


 LOOKUPは検索範囲の中から10^16以上の数値を探しますが、
 見つからない場合は、その範囲の最後の数値を検索します。

 したがって、10^16は検索する範囲にある数値より大きい数であれば、何でもかまいません。

 また、一番左のデータを認識する場合は、

 =INDEX($A$2:$G$2,1,MIN(IF(C3:G3<>"",COLUMN(C3:G3))))

 と入力して、CtrlとShiftキーを押しながらEnterで確定します。(配列数式となります)
 この場合、検索する範囲はC列からですが、
 最後に求めるデータの範囲はA列からとしていることに 注意して下さい。
 (tora)


できました!!!!ありがとうございます!!!!
「10^16」は裏技的なものだということですね。
また、一番左のデータを認識する式について、
Lookupの式から何かできないかと模索してみましたが、
全く違う式だったことに驚きです!!!

お忙しい中、ご回答いただきありがとうございます。
大変助かりました。

また、何かの際には宜敷お願いいたします。


 左端はこんな式でも。
 =INDEX(C$2:G$2,MATCH(1,INDEX((C3:G3<>"")*1,0),0))
 (ねむねむ)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.