プロが教える店舗&オフィスのセキュリティ対策術

検索方法もわからず、大変困っています。

条件があるとします。
---------
リンゴ=1
バナナ=0.8
パイン=0.5
---------

A1セルには「果物」A2セルには「金額(数字)」を入力し、
A1×A2の計算が出来るようにしたいです。
例)リンゴ×100円=100、バナナ×100円=50

「果物」は5種類くらいなのですが、「金額」は任意です。
量が多いので、細かい条件式でないほうがいいです。

簡単そうなのですが、スマートなやり方が思いつきません。
よろしくお願いします。

A 回答 (9件)

「A1セルには「果物」A2セルには「金額(数字)」を入力し、


A1×A2の計算が出来るようにしたいです。」

数式「=A1*A2」
とするだけではできません。


それに近いことをするには、
添付図は(Excel 2003の例)で、

A4の数式は、
「=INDIRECT(A1)*A2」

にします。

この数式でできるようにするには、
F1:G3を選択して、挿入―名前―作成、として、
「左端列」にチェックを入れて、「OK」としておく。
「【エクセル】セルに数字以外を入力して計算」の回答画像9
    • good
    • 0
この回答へのお礼

まさにこれです!名前定義とセルでの計算式です。本当にありがとうございます!!
とってもシンプルな計算式になりました。

お礼日時:2011/01/20 12:06

参考に名前の定義の応用として,添付図はExcel2007の画面ですが名前の定義の作成(2003までは挿入の名前の定義)を使い,ワークシート上に対応表を用意しないで,直接言葉に数値を当てはめて計算に使うことも出来ます。




上級技としては,名前の定義の参照範囲の欄に計算式を書いて,0.8のような固定の生数字だけでなく,ワークシート上の数値などを元に計算した結果を言葉に当てはめる事も出来ます。
「【エクセル】セルに数字以外を入力して計算」の回答画像8
    • good
    • 0
この回答へのお礼

お礼が消えてしまいました。二重になってたらすみません。
先の回答で名前の登録の段階からキャプチャーでの説明をいただきまして、ありがとうございます。

今回は私の説明不足でして、みかん*A2(セル)ではなく、
A1(セル)*A2(セル)にしたかったのです。

上級テクもありがとうございます。他に使えそうです。

お礼日時:2011/01/20 12:27

こういう場合エクセル関数のVLOOKUP関数を使えば仕舞いだよ。

VLOOKUP関数は常識の関数。
D1:E3に
リンゴ1
バナナ0.8
パイン0.5
のような対応表を作り
A1に金額を入れることにして
B1果物名を入れて
C1に
=A1*VLOOKUP(B1,$D$1:$E4,2,FALSE)
を入れる。

A-E列
100バナナ80リンゴ1
バナナ0.8
パイン0.5
A1セルにデータ未入力
B1に表にない果物名を入れるとエラーになるが、質問者は初心者らしいのでこれ以上は略す。
他回答を参照。後者はISERROR関数で予防線をはる。
Googleででも「エクセル ISERROR関数」で照会して勉強のこと。
    • good
    • 0
この回答へのお礼

VLOOKUPは、数式がくずれたら入力の人がなおせないと思いまして。。。
回答ありがとうございます。

お礼日時:2011/01/20 12:29

添付図はExcel2003までの画面ですが,E1:F3を選んで挿入メニューの名前の作成を開始,左端列にチェックを入れてOKしておきます。

(Excel2007以降では数式タブの選択範囲から作成)

すると,A1セルに
=みかん*100
などと式を入れるだけで,みかんやバナナを数値に変えて計算をしてくれます。



計算に使える言葉には若干の言葉遣いの制限があるので,出来ないときはエクセルのヘルプを確認の上,みかんやりんごのように言葉を変えてやりなおしてください。



#名前の作成をしなくても同様の計算できるオプションで「数式で名前を使用する」というのもありますが,イマイチ動作が安定しないので上述手順で明示的に名前定義して使用するのが良いです。
「【エクセル】セルに数字以外を入力して計算」の回答画像6
    • good
    • 0
この回答へのお礼

まとめてお礼いたしました。回答ありがとうございます。

お礼日時:2011/01/20 12:34

「条件があるとします」の直下の数値は、リンゴの単価を基準とした係数を示しているのですか?


つまり、リンゴ単価が100円、120円の場合はパインはそれぞれ50円、60円になるという具合に?

リンゴ単価が125円の場合はパインの単純計算単価は62.5円と端数が出ますが、端数処理はしなくてもOKなのかなぁ~?
    • good
    • 0
この回答へのお礼

説明不足で申し訳ございません。このような質問にも回答していただき、ありがとうございます。

お礼日時:2011/01/20 12:35

回答No1です。


お示しした式

=IF(COUNTIF(F:F,A1)=0,"",VLOOKUP(A1,F:G,2,FALSE)*A2)

の意味はもしもF列にA1に入力した果物の名前がない場合にはからのセルに、そうでない場合にはF列でA1に入力した果物の名前のある行でG列に記載されている条件の数値を取り出し、それにA2セルの値を掛けなさいという意味になります。

F列やG列を使って何種類もの果物について条件の値を入力しておくことで、計算を行うことができます。
    • good
    • 0
この回答へのお礼

>入力した果物の名前がない場合
これありがたいですね。
回答ありがとうございます。

お礼日時:2011/01/20 12:37

果物の数が少なければIF関数で


A列に果物名 
B1に
=IF(A1="りんご",1,IF(A1="バナナ",0.8,IF(A1="パイン",0.5,"")))*100
下方にオートフィル。

果物の数が多い場合は、対応表を作りVLOOKUP関数で
    • good
    • 0
この回答へのお礼

対応表をつくらなくてもできるんですねー。ありがとうございます。

お礼日時:2011/01/20 12:18

上記の条件だと バナナ×100円=80 ではないですか?



こういう場合、項目に単価と個数、(必要であれば仕入価格)というものが必要になります。

計算は、単価*個数*(%、割合、仕入)=小計 の様に...

仮に列Aを品名、列Bを単価、列Cを個数、列Dを仕入掛率とします。
それぞれ
A2=みかん
B2=100
C2=2
D2=0.8
E2 のセルにはfx=(B2*C2*D2)を指定。
結果E2には、160の答えが表示されます。

結論から、文字(果物)と数字は計算する事はできません。
仮に計算を可能にするには、
Aの列に文字が入っていればその文字列を比較し、バナナなら0.8に置き換えて計算する様に式を書けば
できなくはないです。

計算するには、どの情報が必要なのかと言う事を、まず最初に洗い出してから
取り組むと、考え方が楽になります。
    • good
    • 0
この回答へのお礼

バナナ80円でした。すみません。
回答ありがとうございました。

お礼日時:2011/01/20 13:55

例えばF1セルから下方に果物の名前を、G1セルから下方には1,0.8などの条件となる数値を並べた表がるとします。


A1セルに果物名を、A2セルに金額を入力したときにA1*A2の計算ができるようにするためには次のような式にすればよいでしょう。

=IF(COUNTIF(F:F,A1)=0,"",VLOOKUP(A1,F:G,2,FALSE)*A2)
    • good
    • 0
この回答へのお礼

早急にご返答ありがとうございました

お礼日時:2011/01/20 12:20

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