- ベストアンサー
セルのIF分を教えてください
- 質問文章からセルのIF分についての要約文を生成しました。
- セルのIF分の使い方や条件についてまとめました。
- セルのIF分の正しい使い方を解説します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ANo.2です。 > IF(ABS(K2)=1 ABSで 取られると まずい ん?何が「まずい」のでしょうか? K2が1のとき、 K2*(P3-M3)=P3-M3 K2=-1の時 K2*(P3-M3)= -P3+M3 = M3-P3 ですから計算は合っていると思いますが。 質問文に入っていない条件があるのでしたら上げて下さい。 または、計算が合わないパターン(N3=0,K2=-1、等)があればそれを教えて下さい
その他の回答 (3)
- kmee
- ベストアンサー率55% (1857/3366)
IF N3=1 then -M2 else 「N3<>1のとき」 endif ↓ if( N3=1,-M2,「N3<>1のとき」) 「N3<>1のとき」は IF(K2=1, then 「K2=1のとき」 else 「K2<>1のとき」 endif だから if(K2=1,「K2=1のとき」,「K2<>1のとき」) これを最初の式に代入すると if( N3=1,-M2, if(K2=1,「K2=1のとき」,「K2<>1のとき」)) 以下同様に、落ち着いて順番にやれば、IF関数を使った記述に変更できます。 今回のについて言えば、内容を吟味して、#2,#3のようにすると、if関数が減らせて見易くなります。 さらに if(A<B,A,B)→MIN(A,B)であることを使えば =IF(N3=1,-1*M2,IF(ABS(K2)=1,MIN(M2,K2*(P3-M3)),0)) と、とても見易くなります。
お礼
なるほど そいう 関数もありましたか 感謝
- mt2008
- ベストアンサー率52% (885/1701)
解りにくいので誤解している可能性がありますが、こういう事でしょうか? =IF(N3=1,-1*M2,IF(ABS(K2)=1,IF(M2<(K2*(P3-M3)),M2,K2*(P3-M3)),0))
補足
恐縮です VBやなものでして N3は 1 か 0 IF(N3=1,-1*M2 で無問題と思います K2は -1,1,0 の3パターン(ゼロなら 解も 0ですが) で IF(ABS(K2)=1 ABSで 取られると まずい ので IF(K2=1,IF(M2<P3-M3,M2,M3-P3, こうして、 で IF(k2=-1 と 続けたいのですが さらに k2=0 なら ゼロ
- kmee
- ベストアンサー率55% (1857/3366)
すみません、これは何用の記述なのでしょうか? 「セルの中」ということで、Excelのセルに記述する数式のことかと思いますが、if関数には、elseとかendifとはかありません。 Excelのセルに記述するのは「数式」であって、VisualBasic (for Application)ではありません。
補足
お手数です おっしゃることは分かります。要は VBロジックを(記述を) エクセルセル式に直したい ということであって・・・・ , も 出てきていますが NGセル式を VB的に書き直しているから 付いているわけで 細かい記述的なことはスルーしてください。 このロジックを セル式で書けば?? ってことで よろしく 早い話 =IF(N3=1,-M2,IF(K2=1,P3-M3,IF(K2=-1,M3-P3,0))) ここまでは OK で、K2=1 と K2=-1 に さらに IF を 追加すると・・・・
お礼
感謝 理解できました。
補足
恐縮です へそ、その後 k2を かけて +-ひっくり返して、if分 1個減らしている・・・・ 気がまわりませず・・・ でも、答えが合わないので どこが違うのか、しばし、お時間下さい。陳謝