dポイントプレゼントキャンペーン実施中!

物流会社に勤務している者です。
距離(行)と重量(列)で作成された単価表があります。距離は10km、20km・・・、重量は1~500kgまで、501~750kg・・・最後は8,000以上といった感じです。
入力ファイルの距離と重量から、indexとmatchを使用して、上記の単価表が1種類であれば金額を出せるのですが、単価表は2種類あり(項目は同じ、金額のみ異なる)、このような場合の関数が思いつきません。2つの表を切り替えて金額を出す良い方法はありますでしょうか。よろしくお願いいたします。
使用ソフト/Excel2013

質問者からの補足コメント

  • 早速ご回答いただきましてありがとうございます。初めての投稿だったので感激です。
    参照範囲に名前をつけることはできたのですが、これをindexで組み立てることができません。
    お時間あるようでしたら、引き続きよろしくお願いいたします。

    No.1の回答に寄せられた補足コメントです。 補足日時:2016/09/11 11:31
  • ご指摘いただきましてありがとうございます。
    漠然としておりすいません。
    下記のような式になります。
    =INDEX($B$2:$E$11,MATCH(A15,$A$2:$A$11,1),MATCH(B15,$B$1:$E$1,1))
    B2:E11は単価表データ、A15は距離、B15は重量を入力します。
    引き続きよろしくお願いいたします。

    No.2の回答に寄せられた補足コメントです。 補足日時:2016/09/11 20:49

A 回答 (3件)

単価表の範囲は、距離、重力の見出し部分を含めて、A1:E11で定義します。


C15に単価表の名前が入力されているものとします。

月草色さんの式をそのまま拡張した場合、こんな感じになると思います。
=INDEX(INDIRECT(C15),MATCH(A15,INDEX(INDIRECT(C15),0,1),1),MATCH(B15,INDEX(INDIRECT(C15),1,0),1))

また、これでも同じ結果が得られるはずです。
=VLOOKUP(A15,INDIRECT(C15),MATCH(B15,INDEX(INDIRECT(C15),1,0),1),1)
    • good
    • 0
この回答へのお礼

お返事いただきましてありがとうございます。
表の切り替えができました!
昨日、色々なサイトで検索したにも関わらず解決できず、このような場で質問させていただくことになりましたが、私の為に貴重なお時間をいただき、大変感謝しております。
本当にありがとうございました。

お礼日時:2016/09/11 22:59

「単価表が1種類であれば金額を出せる」とのことですが、まずは、その式を補足に挙げるべきです。


そうすれば、それに沿ったアドバイスが貰えるので、参考にしやすいと思いますよ。
この回答への補足あり
    • good
    • 0

以下がまさにあなたのやりたいことかと思います。


参考になると思いますがいかがでしょう。

http://kokodane.com/kan34.htm

単価表1、単価表2 のそれぞれの範囲に名前を付け、
INDIRECT関数を用いて、参照する表を切り替えればOKです。
この回答への補足あり
    • good
    • 0

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