[[20100831175642]] 『一覧の中から最終データ(文字列)を取り出す』(まるまる) ページの最後に飛ぶ

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

 

『一覧の中から最終データ(文字列)を取り出す』(まるまる)

[[20030806101456]] 

こちらの質問において、最終データが値のみではなく

「文字列と値が混在」の場合はどのようにしたらよろしいでしょうか。

教えてください。宜しくお願い致します。

バージョンはExcel2003です。


私は関数で考える頭が無いので、ユーザー関数で(汗)。

Alt+F11でVBAエディタが出てきますので、[挿入]-[標準モジュール]で出来た白いところに↓をコピペ。

 Function lastvalue(target As Range) As Variant
 Dim c As Range
 For Each c In target
     If c.Value <> "" Then lastvalue = c.Value
 Next c
 End Function

シート上では

 =lastvalue(A2:E2)

のように使います。

(ramrun)


 こんばんわ。。
 M2=INDEX(B2:K2,MAX((B2:K2<>"")*COLUMN(A1:J1)))
    Shift+Ctrlを押下したままEnterで確定。。
 (kei)

 =LOOKUP(1,0/(B2:J2<>""),B2:J2)
 で、どーかな?
 (1111)

 ◆(1111)さんとかぶりましたがUPします
 ◆数値の場合
 M2=LOOKUP(10^10,B2:K2)
 ◆文字列の場合
 M2=LOOKUP("ーー",B2:K2)
 ◆数値と文字列混在
 M2=LOOKUP(1,0/(B2:K2<>""),B2:K2)
 または、
 M2=LOOKUP(9^9,CODE(B2:K2),B2:K2)
 (Maron)

(ramrun)さん、(kei) さん、(1111) さん、(Maron)さん

すべて試したところ、ばっちりできました!

早々にコメントいただき大変感謝しております。

ありがとうございました。

(まるまる)


 ちょいと場所をお借りして。
 Maronさん、
 CODEにそんな使い方があったとは…
 目からうろこでした。
 今後、参考にさせていただきますっ
 (1111)

 Maronさん、こんにちわ。。
  ◆数値と文字列混在
 M2=LOOKUP(1,0/(B2:K2<>""),B2:K2)
 または、
 M2=LOOKUP(9^9,CODE(B2:K2),B2:K2)

 / や CODE の使い回しの原理が分かりません、お暇なときに教えてください。m(__)m
 (kei)

 Maronさんじゃないっすけど、とりあえず/について。

 /は四則演算の「割る」です。
 TRUEやFALSEの論理値は四則演算すると、TRUE→1、FALSE→0になるんで。

 たとえば
 式を =0/(A1<>"") にすると、
 A1が空白でなければ(TRUEなら) =0/1 で 0、空白なら(FALSEなら) =0/0 で #DIV/0!

 つーわけで、単にまとめて {0,0,#DIV/0!,0,#DIV/0!} みたいな配列を返したかったんで、割り算してるだけです。

 これでわかりますかね?
 (1111)

私も気になったんで、リハビリがてらに試してみました。

で、↓の式だと"d"が返ります。

 =LOOKUP(5,{1,2,3,4},{"a","b","c","d"})

ヘルプには

で、降順で試してみると

 =LOOKUP(5,{4,3,2,1},{"a","b","c","d"})

やはり"d"が返ります。多分、検索範囲が昇順でなければ、検索値以下の値がある最後の要素を返すようです。

あと検索範囲のエラー値は無視?してくれるようですよ。といっても検索範囲が全部エラー値だったり、検索値以下の値がひとつも無いとやはりエラーとなりますけど。これで/やCODEを使ってうまくいく理由がわかるんじゃないでしょうか。

私もはじめて知ったんですが、

 =LOOKUP(1,0/(B2:K2<>""),B2:K2)

を打ち込んだセルを1つ選択し、数式バー上で 0/(B2:K2<>"") の部分をドラッグしてF9キーを押すと、返ってくる値が確認できるんですね〜

(ramrun)なにか違ってたらごめんなさい


 1111さん、ramrunさん、ありがとうございます。
 たった今帰宅しました。(遊びから・・デヘヘ ^^)
 丁寧な説明ですので、良く理解できました。
 達人たちのツールを少しでも自分のものにできればと・・・精進! 精進!
 また、鋭いご指摘と、ご教授をお願いします。。
 (kei)

コメント返信:

[ 一覧(最新更新順) ]


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