• ベストアンサー

スプレッドシートで栄養価に係数をかける

スプレッドシートで栄養価の計算をしたいです。 食品成分表では100gあたりの栄養価が掲載されているので、重量1を100gとして、0.1と入力した場合には10g分の栄養価が表示されるようにしたいです。 これが計算したい食品です。 https://fooddb.mext.go.jp/details/details.pl?ITEM_NO=1_01004_7 スプレッドシートのurlです。サンプルとしてミネラルの箇所をコピペしています。栄養の合計の行では、SUMを使用して列を足し算しています。 https://docs.google.com/spreadsheets/d/e/2PACX-1vQY_vYYuDT2DY07s_8Hku14MjUFK5CKt7iHsol23Tnry6WwS12SHMm5RLRgI4y2PXKN2JGosoMSRhsx/pubhtml?gid=0&single=true C3をすべてのセルに乗算すればいいわけですが、これを一括でやることは可能でしょうか?1つ1つて入力していくのは大変です。 arrayforlura等使用スル場合はもう1行が必要となるでしょうか?

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

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.1

> arrayforlura等使用スル場合はもう1行が必要となるでしょうか? はい必要です。適当な行に元の値を貼り付けて前回のarrayforluraを利用してください。

inudaisukidesu
質問者

補足

他の行を使わずに行う方法はないのですか?

その他の回答 (2)

  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.3

> 他の行を使わずに行う方法はないのですか? ちなみに、GASの編集時処理を利用すれば、C列入力時にC列の入力前のデータとそれぞれの栄養価のデータから100gあたりの栄養価を計算し戻して入力後のデータで再計算すればできないことはありませんが、例外処理とか考えたらそこまでする必要性を感じません。

  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.2

> 他の行を使わずに行う方法はないのですか? 同一行の基本のデータ(100gあたりの栄養価)部分を計算で書き替えて、次にどうやって基本のデータ(100gあたりの栄養価)から計算するというのですか? そもそも、arrayforluraで計算式を作成しておけばその行は不変でいいわけで、他の行に基本のデータをコピーすればいいだけですから手間は同じですよ。他の行を使わないという事にこだわる理由がわかりません。基本のデータ用にシートを別に設けてもいいわけですし。

関連するQ&A