• ベストアンサー

エクセル・index関数

エクセル2000で作った料金表の料金を表示させるには どうすればいいでしょうか? 手順として考えているのは (1) 総当り表のように、出発地と目的が交差したセルに  その区間に該当する料金を入れた表を作る。 (2) 区間の駅名を「データ」の中の「入力規則」機能を  使用して、プルダウンメニュー?(オートフィルタみたいな  感じ)でそれぞれ行き先・目的地をクリックだけでセルに  入力出来るようにする。 (3) 行き先・目的地を入れると(1)で作った料金表から   該当区間の料金を引っ張って表示できるように   関数を入力する。 なのですが、手順(2)まではできましたが(3)で使用する関数を どうすればいいのかわかりません。 関数には日本語が使えないので駅名にそれぞれ数字を割り当てて、 まず(2)で選択した駅名を数字に置き換える関数を入れたセルを 作ってから・・・と思ったのですがindexの関数がどうしても 正しく入れられません。 説明も的確ではないかもしれませんが、かなり困っています。 全くやり方が違っているかもしれません。 ご指摘・ご指導よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • comv
  • ベストアンサー率52% (322/612)
回答No.1

こんにちは!  A    B    C    D    E 1 出\着  aaa   bbb   ccc   ddd 2 aaa    0   100   200   300 3 bbb   100    0   100   200 4 ccc   200   100    0   100 5 ddd   300   200   100    0 こんな表でしょうか?   A  B 7 出発 リスト 8 到着 リスト 9 金額 ★式 式  =IF(COUNTA(B7:B8)=2,INDEX(B2:E5,MATCH(B7,B1:E1,0),MATCH(B8,A2:A5,0)),"") 主旨と合致しているようでしたら試して見て下さい!

orie
質問者

お礼

早速のレスありがとうございます! この数日悩み続けていたんです。 まったく、思った通りの関数でした。 ありがとうございます!

その他の回答 (1)

  • ellery
  • ベストアンサー率40% (9/22)
回答No.2

こんばんは。 つい最近、学校で関数を習ったばかりですが、がんばって考えてみました。 少し回りくどくなってしまうかもしれませんが。。。 ・(1)の時に出発地・目的地の外側に番号を振る。  振らなくてもいいのですが、(2)を分かりやすくするために。。。 ・(2)でセルに出発地等が表示されたらその隣にでも(1)と対応する番号がでるようにしてください。 ・(3)でindexを使った関数を入力します。 =index((2)での料金表の行にある数字が入力されているセル,同じく列,料金表のデータ部分を範囲選択) でOKだと思います。 さらにindexの前にif文で(2)が空欄の時は何も表示しないとすれば完璧です。 きっと、もっと簡単な方法があるでしょうからこれは本当に参考までに。。。

orie
質問者

お礼

ありがとうございます。 関数の理屈がいまひとつわかってないまま使ってますので 日本語で組み立てを解説していただくとよくわかります。 関数を重ねて使用するという発送があまりなく、ifを重ねて 使うというやり方、勉強になりました。

関連するQ&A

専門家に質問してみよう