[[20170225132033]] 『『最終行の値の取得方法』20040224132857の式に追』(8998ノブ) ページの最後に飛ぶ

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

 

『『最終行の値の取得方法』20040224132857の式に追加できますか?教えてください。』(8998ノブ)

『最終行の値の取得方法』 の=INDEX(B4:B100,MATCH(10^17,CODE(B4:B100)))を使って、感激しました。
追加で、この式で取得したセルの行のA列の値を隣のセルに出したいのと、
上記の式で得た値のひとつ前の入力値(空欄は無視)を得るにはどうゆう式になるのかを教えていただけませんか?
宜しくお願いします。

< 使用 Excel:Excel2007、使用 OS:Windows7 >


 >=INDEX(B4:B100,MATCH(10^17,CODE(B4:B100)))を使って、感激しました。 

 その式でよければ、第一引数だけ「B列」となっている部分を「A列」に変更すればいいです。

 >上記の式で得た値のひとつ前の入力値(空欄は無視)を得るには

 どっちの列の値ですか? 
 A列のなら
     ↓
 =INDEX(A4:A100,MATCH(10^17,CODE(B4:INDEX(B4:B100,MATCH(10^17,CODE(B4:B100))-1))))

 考えたら、幾らなんでも「10^17」は必要ないですね。
 CODEの上限って何か知らないですけど、精々6桁ですよね? 「10^7」で十分そう。

(半平太) 2017/02/25(土) 15:27


半平太さん
ありがとうございます。
ひとつ前の値を得るのは成功しました。素晴らしいです! 神様に思えます。
と、私の説明が悪かったのですが、最初のA列を取得とは
B列で取得した際の対象セルの行のA列の値ということで、説明が足りてますでしょうか?
こんな感じです。
 A B C
1あ
2い b s
3か h
4さ  v
 上記で行くと、B列の4行目の”v”を取得した時のA列なので”さ”を返したいのです。
文章力がなくてすみません。

  よろしくお願いします。
(8998ノブ) 2017/02/25(土) 16:27


 >上記の式で得た値のひとつ前の入力値(空欄は無視)を得る

 こっちの方から。
「上記の式」を使わなくてもいいんだったら、B列には2つ以上の値があるという前提で、

 B列の値
 =INDEX(B:B,LARGE(INDEX((B4:B100<>"")*ROW(B4:B100),0),2))

 普通にEnterだけで確定。
 A列の値は =INDEX(B:B,・・・ → =INDEX(A:A,・・・ にするだけ。

 最終行の値ですけど、これも提示の式を使ってという前提ではないのなら、ちょっとお聞きします。
 1)B列の値は下記のどれですか?(サンプルは文字列ですけど、一応確認)
  ・数値
  ・文字列
  ・数値、文字列混在

 2)B列の空白セルは下記のどっちですか?
  ・数式も何も入っていない未入力セル
  ・数式で「空白」にしている

 とりあえず確認だけ。
 あくまで提示の式を使って、ということであればスルーしてください。
(笑) 2017/02/25(土) 16:41

早速のご返答ありがとうございます。
まず、式については、こだわりはありません。
1)
・B列の値は文字列(数字が入る場合もあります)になります。
・A列は日付になります。
2)
・セルには数式も何も入れない未入力セルの予定です。

これは、リース品の貸出先管理表になり、今現在の貸出先と、貸出日、それとひとつ前の実績を
集計表にまとめて、稼働状況を確認するためのモノにしたいんですが、・・・・・

よろしくお願いします。
(8998ノブ) 2017/02/25(土) 16:56


 B列が数値・文字列混在なら、

 ■最終行の値
 A列の値: =IFERROR(LOOKUP(10^9,CODE(B4:B100),A4:A100),"")  表示形式「日付」
 B列の値: =IFERROR(LOOKUP(10^9,CODE(B4:B100),B4:B100),"") 

 どちらも普通にEnterだけで確定。

 ■最終行からひとつ前の値

 > =INDEX(B:B,LARGE(INDEX((B4:B100<>"")*ROW(B4:B100),0),2))
↑ は試してくれたんでしょうか?

 B列に2個以上の値がない場合も考慮するなら、

 A列の値: =IF(COUNTA(B4:B100)<2,"",INDEX(A:A,LARGE(INDEX((B4:B100<>"")*ROW(B4:B100),0),2)))

 普通にEnterだけで確定。表示形式「日付」

 参考まで。
(笑) 2017/02/25(土) 17:17

重ねてありがとうございます。
『最終行からひとつ前の値』は完璧でした!

A列の値について、B列に式を貼り付けたところ、うまくいきました。流石です!!!!
これを、ドラックしてC〜貼り付けたところ”A”が変わってしまうので、固定したいのですが
これまた、自分ではうまくいきません。(TT)
『A』を固定するには、どうしたらよいのでしょうか?

何度もすみませんが、よろしくお願いいたします。
(8998ノブ) 2017/02/25(土) 18:04


 >『A』を固定するには、どうしたらよいのでしょうか? 

 どの式のことですか? 「最終行からひとつ前の値」の式だったら、

 =IF(COUNTA(B4:B100)<2,"",INDEX($A:$A,LARGE(INDEX((B4:B100<>"")*ROW(B4:B100),0),2)))
                                ~~~~~
 A:A → $A:$A に。
 
「$」は手入力しなくても、数式バーの「A:A」のところにカーソルを置いて、
 F4キーを1回だけ押せばいいです。
 詳しくは「絶対参照」でネット検索してみましょう。

 で、「最終行の値」は試してくれたんですか?
(笑) 2017/02/25(土) 18:31

(笑)様
完璧でした。!!!!!!!!
もう素晴らしくて、言葉が出ません!  神様としか思えません。ありがとうございます。
このぐらいできたら、楽しいだろうなと羨ましく思います。

「最終行の値」はうまくいってます。

これで、なんとかなりそうです。本当にありがとうございました。

また、分からないときは、宜しくお願いいたします。

(8998) 2017/02/25(土) 18:49


コメント返信:

[ 一覧(最新更新順) ]


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