チョコミントアイス

Excelでファイルを作成する際によく使うデータがありますので、それをテーブルとしてファイルをひとつ作っておいて、キーになる言葉を入力したら該当のデータを読み込むようにしたいのです。

たとえば、「価格表」というファイルをひとつ作っておきます。価格には定価とバーゲン価格と二種類あるとします。縦に製品リスト、横に「通常価格」「バーゲン価格」のカラムを作り、マトリックス上に数字(価格)を埋めておきます。

そして、見積書を作成する際に、セルA1に製品名を、セルA2に通常価格かバーゲン価格かを記入すると、セルA3に実際の価格が自動的に記入される、というようにしたいわけです。

そんなに難しい話ではなく、ありがちな操作だと思うのですが、通常の関数では無理そうです。

参考になるサイトのURLを教えていただくのでも結構です。
よろしくお願いします。

A 回答 (2件)

エクセルの別シートに検索表を作り、VLOOKUP関数で検索すればよいのでは。

まさかVLOOKUP関数の仕様経験が無いのでは無いでしょうね。
>ありがちな操作だと
言わなくてもエクセルを事務で使う人はそうしています。
エクセルの別ブックに、表を持つ方法もありますのでWEBで「VLOOKUP
別ブック」で照会してみてください。
http://detail.chiebukuro.yahoo.co.jp/qa/question …
エクセル以外のソフトでは、エクセル以外のファイルに(テキストファイルなど)に、必要情報を持ち、処理を始めるとき毎度読み込み
変数や配列にセットし、実行中に使うのは良く使う手だと思います。
しかし質問者は一番簡単なテキストファイルをプログラムで読み書きするのも現状ではできないのではないかな。
ですからエクセルのシートでの記録を言うわけです。
    • good
    • 0
この回答へのお礼

ありがとうございます。VLOOKUP関数は知りませんでした(なぜ「まさか」なのかよくわかりませんが)。試してみます。

お礼日時:2007/12/21 15:11

通常の関数で出来ますよ。


特に問題が無いなら、同じブック内の違うシートで見積書と価格表を作ると便利です。

○シート1(見積書)※A~Bは列番号1~3は行番号。
  A        B       C
1 該当商品名 選択価格  単価(計算式)

セルC1に次のような計算式を入れます。
『 =INDEX(Sheet2!$A$1:$C$3,MATCH(A1,Sheet2!$A$1:$A$3,0),MATCH(B1,Sheet2!$A$1:$C$1,0)) 』


○シート2(価格表)※A~Bは列番号1~3は行番号。
  A      B      C
1 商品名  価格   B価格
2 アメ    100    50
3 ガム    120    60

更に、シート2の『商品名~ガム』までを選択し、『挿入』⇒『名前の作成』⇒『名前の作成先』を上端行で作成します。
そしてシート1のA1セルを選択して『データ』⇒『入力規則』⇒入力値の種類を『リスト』、『元の値』欄に『 =商品名 』と入れると商品名のリスト入力が可能になります。
この操作に関しては同じブック内でしか出来ません。

今回の質問の関数については、上記の関数で大丈夫だと思います。
ブックを分けた場合は、ブック参照を上記の関数に付け足して見て下さい。
    • good
    • 0
この回答へのお礼

ごていねいにありがとうございます。試してみます。

お礼日時:2007/12/21 15:10

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


おすすめ情報