
エクセル初心者ですので用語を正しく使えていないかもしれませんが、よろしくお願いします。
食品を選んで摂取量を入力したら、自動でカロリー等の栄養素を計算して表示されるようにしたいです。
データの入力規則を利用して別シートから参照して食品のドロップダウンリストを作成することはできました。
次に、vlookup関数を利用して、ドロップダウンリストから選んだ食品を選んだらカロリーなどの栄養の値が表示されるようになりました。
=vlookup(A2,Sheet2!A2:G10,2,false)
ただ、値を摂取量によって自動で計算できるようにしたかったため、参照元のセルに
=50/100*(indirect(address(row(),column()-1)))
の計算式を入れましたところ、#VALUE!と出てしまいます。
100g当たり50kcalの食品で、左隣のセルに摂取量(g)を入力したら自動で計算されるようにしたかったのです。
カロリーの他にもタンパク質、脂質、炭水化物、ビタミン類などをリストから選んで摂取量を入力したら対応して計算できるようにしたいです。
vlookup関数では値のみで、数式は反映されないのでしょうか。
他にもっと良い方法がありましたら教えてほしいです。
No.5
- 回答日時:
一応確認なんですが、左隣のセルに単位(gとか)を含めて入力している訳ではないんですよね?
できれば実際のデータなどを書き出してもらいたいんですが。
No.2
- 回答日時:
参照元のセル、とはどこのこと?
VLOOKUPの説明としては
=VLOOKUP(検索値、参照値を含む範囲、戻り値を含む範囲内の列番号、近似一致 (TRUE) または完全一致 (FALSE))
となってて、参照元という言葉は使われないし、どこのことかな、と。
=50/100*(indirect(address(row(),column()-1)))
この式は、
=50/100 × [この数式が書かれいるセルの左のセルの値]
なわけですが、[この数式が書かれいるセルの左のセルの値]が数字になってますか?
No.1
- 回答日時:
> vlookup関数では値のみで、数式は反映されないのでしょうか。
そんなことありません。
> =50/100*(indirect(address(row(),column()-1)))
は、これを入力したセルのすぐ左のセルの値に50/100を掛ける言うことですが、認識あっていますか?普通は、=50/100*左セル (例えば =50/100*A5)とかと書きます。
> =50/100*(indirect(address(row(),column()-1)))
をA列に書いたか(この場合はadress関数のエラー)、この左のセルが数値じゃ無いか(この場合は50/100とのかけ算のエラー)。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
Excelでなぜこのような式をつかっているのでしょうか、行に1,2,3と連番を振るだけなのに
Excel(エクセル)
-
何故割り算なのでしょうか?
Excel(エクセル)
-
Excelの関数詳しい方お願いします。
Excel(エクセル)
-
-
4
EXCEL 和暦を西暦に変換する方法について
Excel(エクセル)
-
5
Excelについて
Excel(エクセル)
-
6
Excelで2つの条件のうちどちらかにあてはまるときの数式を教えてください。
Excel(エクセル)
-
7
Excelにはなぜ関数をいれないとできないのですか
Excel(エクセル)
-
8
Excelで漢字人名が勝手に並び変わる(続)
Excel(エクセル)
-
9
至急お願いします
Excel(エクセル)
-
10
VLOOKUP が機能しない、その原因は何 ?
Excel(エクセル)
-
11
エクセルで 例えばA1のセルに1+1 と入力すると B1のセルに2 と答えが出る関数があったと思いま
Excel(エクセル)
-
12
エクセルのソート方法について
Excel(エクセル)
-
13
エクセルのワークシートを簡単に別ファイルにする方法は?
Excel(エクセル)
-
14
エクセルの技(関数?)を教えてください。
Excel(エクセル)
-
15
Excelで立ち上げたときに「参照が正しくありません」の表示がでる
Excel(エクセル)
-
16
エクセル 住所間の通勤時間
Excel(エクセル)
-
17
なぜExit Subがあるのかわかりません
Excel(エクセル)
-
18
エクセルでセルの値分の個数の数字列を自動で入れたい
Excel(エクセル)
-
19
Excelで、昭和の西暦換算
Excel(エクセル)
-
20
CSVファイルでVBAを動かす方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
赤血球が多いと言われました。
-
5
VLOOKUP関数を使用時、検索する...
-
6
中出しをするとお腹が痛い・・・。
-
7
2つの数値のうち、数値が小さい...
-
8
精液の落とし方を教えてください
-
9
小数点以下を繰り上げたものを...
-
10
cos2Xをマクローリン展開すると?
-
11
エクセルでエラーが出て困って...
-
12
Excel 0目標に対して数字があ...
-
13
ノミナル
-
14
Excelで""で囲む方法
-
15
EXCELで式からグラフを描くには?
-
16
1日前の検尿
-
17
値が入っているときだけ計算結...
-
18
【Excelで「正弦波」のグラフを...
-
19
納豆食べた後の尿の納豆臭は何故?
-
20
Excelで数式だけを消して、数値...
おすすめ情報
公式facebook
公式twitter
説明が下手ですいません。
はい、すぐ左のセルの値に50/100を掛けるつもりで書きました。
(indirect(address(row(),column()-1)))
と書いた理由は、例えばA5と指定した場合、ドロップボックスで7行目にその食品を選んだらA7の掛け算をしたいのにA5の値で掛け算されてしまうと思ったからです。
左隣のセルは確保していますし、数値を書いても#VALUE!のままなのです……。
回答ありがとうございます。説明が下手ですいません。
なんといえばいいのでしょう、
検索値、参照値を含む範囲、戻り値を含む範囲内の列番号 で指定したセルの中を関数にした、という説明でよいでしょうか。
数式が書かれているセルの左の値は数字になっています。