プロが教えるわが家の防犯対策術!

Vlookup関数を設定した後で、参照元のテーブルに行挿入をしました。
自宅のPCでは計算式が自動で変更され、元の結果を保持するのですが、別のPCでは下記に記載のように、計算式が変化せず、都度修正しなくてはならないため困っています。


*元の表の作成(画像の表ができます。)
1.列B:Cに参照されるテーブルを設定する。
2.D10を入力用セルにする。
3.E10に下記Vlookup関数を設定する→=VLOOKUP(D10,B:C,2,FALSE)
4.D10に数字(Code)を入力するとE10にClass[A]が表示される。

*ここで列BとCの間に列を1列挿入します。
自宅PCでは計算式が、=VLOOKUP(E10,B:D,3,FALSE)と変化して、Class表示に設定した計算式がそのまま使えたのですが、今困っている別のPCでは、=VLOOKUP(E10,B:D,2,FALSE)となっています。

参照する行数が3に変化せず2のままのため、これを列挿入時に3に変化するようにしたいのです。
マクロとかでなく、どこかの設定を変更するものと推測していますが、見つからなかったため、ご存知の方がいらっしゃいましたら、ご教授のほど、お願いいたします。

「エクセルで行挿入をした時に、Vlooku」の質問画像

A 回答 (2件)

残念ながらVLOOKUP関数の限界です。


http://www.vlookup.skr.jp/vlookup_genkai_2.html

列を挿入したらVLOOKUP関数の第三引数も自動で変更されるようにすることで対処します。
=VLOOKUP(E10,B:D,2,FALSE)

=VLOOKUP(D10,B:C,COLUMNS(B:C),FALSE)
として列を挿入して動作を確認してみて下さい。
    • good
    • 0
この回答へのお礼

こんにちは
素早いご回答、ありがとうございました。

動作確認できました。
お二方のご回答は、私にとって新しい学びとなり、困り果てていた私を助けてくれました。

両方ともベストアンサーにしたいのですが、先にご回答頂けた5W2H様をベストアンサーとさせていただきます。

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

お礼日時:2015/03/13 14:22

こんにちは!



数式が入っている場合、後からの行挿入・行削除は極力避けた方が良いのですが、
どうしても行挿入を行わなければならないであれば、No.1さんが紹介されている方法になると思います。

他の関数でもよいのであれば
=INDEX(C:C,MATCH(D10,B:B,0))
としてもOKだと思います。m(_ _)m
    • good
    • 0
この回答へのお礼

こんにちは!

Index関数、初めて使ってみました。
これは学びがいがあって面白そうです。
今後、使っていいけるよう、いろいろとトライしてみます。

今回は、5W2H様をベストアンサーとさせて頂きましたが、tom04さんへの感謝の気持ちも等しく大きいものです。

ご回答と学びの機会を頂戴したことに感謝いたします。

お礼日時:2015/03/13 14:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています