- ベストアンサー
Excel 関数
マクロを使わずに関数でこんな式を入れられないでしょうか。 考え方を少し変えれば出来そうな気もするのですが。 A1、A2・・A4と仮に四つのセルがある。 この何れかに数字が一つ入った時、例えばA1に10が入ったとき、 B1セルに=A1、B2セルに=B1/2 A2セルに10が入ったとき(A1はブランク又は0) B1セルに=A2/2、B2セルに=A2 と言うようなどこかのセルに入った数値によって、 返す式を変更できる様な計算式となるのですが。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
返す式を変更することはできませんので、IF関数で各セルを各々やってはいかがでしょう。 B1セルに、 =IF(A1=10,A1,IF(A2=10,A2/2,"")) B2セルに、 =IF(A1=10,B1/2,IF(A2=10,A2,""))
その他の回答 (1)
- keithin
- ベストアンサー率66% (5278/7941)
>A2セルに10が入ったとき(A1はブランク又は0) 現実にはA1にもA2にも数字を「入れること」は出来ますので ケース1)運用によって絶対そういう風にはしないと保証するので、数式で考量する必要はない ケース2)何かの間違いで両方に入るかもしれないので、数式側で手当てする どうしたいのかによって、具体的な対応は変わります。 >返す式を変更できる様な計算式となる 当たり前の事ですが、数式を書き換えるみたいな事は出来ません。 準備をしておいて、どの式で計算した結果が現れたらいいのか仕込んでおけばよいだけですが、方法は様々考えられます。 ごく簡単な仕分けとしては B1:ケース1 =IF(A1<>0,A1)+IF(A2<>0,A2/2)+IF(A3<>0,…)+IF(A4<>0,…) B2:ケース2 =IF(A1<>0,B1/2,IF(A2<>0,A2,IF(A3<>0,…,IF(A4<>0,…,"")))) などのように逐次ヤリタイ事を記入しておけばいいだけです。 他にも、たとえば他の表範囲にすべてのパターンで計算式を並べておいて、実際の状況に応じてその中からどの結果を取ってきたらいいのか仕分けるといった、計算機お得意の力技的解決方法もあります。
お礼
有り難うございました。 ご回答の計算式で出来ました。 重ねて御礼申し上げます。
お礼
有り難うございました。 実際には計算が複雑な為に式は長くなりますが、 思い通りの形に出来ました。 重ねて御礼致します。