みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
いつもお世話になっています。
「鶏卵」「小麦」「牛乳」というフィールドがあり、それぞれグラム数またはテキストで入力します。
それぞれのたんぱく質含有量を求めるフィールドの計算式を教えて欲しいのですが、
それぞれのたんぱく質1g当たりの換算係数は「22」を使用します。
また、鶏卵のフィールドは表示方法が「1/32個」「1/16個」「1/8個」「1/4個」「1/2個」「1個」で表示をしたいので、
卵1個を50gとした場合、鶏卵のみでは以下の計算となりました。
If (鶏卵= "1/32個";"1.5625" ;If(鶏卵="1/16個";"3.125";If(鶏卵="1/8個";"6.25";If(鶏卵="1/4個";"12.5";If(鶏卵="1/2個";"25";If(鶏卵="1個";"50"))))))* 22
ただし、それぞれのフィールド値が空白の場合は除外して計算をしたいと考えています。
例)鶏卵 1個、小麦 空白、牛乳 空白 の場合 たんぱく質含有量は 50*22=1100g
鶏卵 1個、小麦 10g、牛乳 空白 の場合 たんぱく質含有量は (50+10)*22=1320g
といった感じの数値を導きたいのですが、空白のフィールドを除外する方法がわかりません。
どなたかご教示お願いします。
Offline
計算結果は、小数点以下を四捨五入した「整数値」で返す式
Round((Evaluate(Substitute(鶏卵フィールド; ["個";"*50"])) + 小麦フィールド + 牛乳フィールド)*22; 0)
Offline
おぉ、早速ありがとうございました。
上手くできました。
条件追加で大変申し訳ありません。
鶏卵フィールドに「1個」と入力した場合に、別のフィールドに「生卵黄」と入力した場合は「1」を、「加熱卵黄」と入力した場合は「0」を返す条件を追加できますでしょうか?
たとえば、以下のような計算が成り立つようにできればと考えています。
生卵黄 1個、小麦 1g、牛乳1g の場合 1+22+22=45
加熱卵黄 1個、小麦 1g、牛乳1g の場合 0+22+22=44
加熱全卵 1/2個、小麦 1g、牛乳1g の場合 550+22+22=594
Offline
修正式は、
Let(
[
#egg=
Case(
別のフィールド="生卵黄"; "/22";
別のフィールド="加熱卵黄"; "*0";
"*50"
);
#鶏卵=Evaluate(Substitute(鶏卵フィールド; ["個";#egg]))
];
Round((#鶏卵+小麦フィールド+牛乳フィールド)*22; 0)
)
Offline
Hiroさん
いうことない、完璧です。
ありがとうございました。たすかりました。
Offline
Pages: 1
[ Generated in 0.005 seconds, 7 queries executed - Memory usage: 551.84 KiB (Peak: 579.64 KiB) ]