- ベストアンサー
同セルに対し、2通りの条件をだしたい。
- みんなの回答 (10)
- 専門家の回答
質問者が選んだベストアンサー
>なぜ「A7セル」へ「(3)で求められた(答え?)」となるのでしょうか? 当初の質問文に「(3)A5からA4を減算した結果を関数上では絶対数とする」とありましたので再確認しました。 質問文に貼付された画像で確認しましたので説明不要です。 >はどこに入れる式ですか? 上記の再確認に付随することなので無視してください。 >これは表にしてすでにアップしてあります。 確認しました。 説明不足については画像から読み取れましたので具体的な数式を提示します。 1つの数式を下へコピーすれば良いという考え方をすると数式がとても長くなり解読困難になりますので各セルは固有の数式を設定します。 A6セルの数式:=IF((A5=0)*((A1>0)+(A2>0)),A5,"") A7セルの数式:=IF((A5<0)*((A1+A2)>0)*(A4>0),ABS(A5),"") A8セルの数式:=IF((A5<0)*((A3+A4)=0),ABS(A5),"") A9セルの数式:=IF((A5>0)*((A1+A2)>0),A5,"") A10セルの数式:=IF((A5=0)*(A3>0),A5,"") A11セルの数式:=IF((A5<0)*(A3>0)*(A4>0),ABS(A5),"") A12セルの数式:=IF((A5<0)*(A3>0)*(A4=0),ABS(A5),"") A13セルの数式:=IF((A5>0)*(A3>0),A5,"") Excel 2013で検証した結果の画像を貼付します。 尚、数式の解説が必要なときは補足やお礼に書き込んでください。
その他の回答 (9)
- miso_kasu
- ベストアンサー率60% (6/10)
>ただ実際の表にはA1~A4の間に2つのセル(行)があります。 新たな条件の追加ですか? 字句のままでA1、A2、A3、A4とセルが配置されていてA1~A4の間にA2とA3の2つのセルが既に存在しますので改めて言う必要が無いと思います。 >このための式を作らないと現実的には完成しません。 条件が異なる数表については別の質問を投稿してください。 この件は提示の数式の解説までに止めていただかないと混乱して収拾が付かなくなります。 尚、当方の検証結果であなたの要望を満たしていない箇所がありましたら指摘してください。(例:C6とA10、B10に0を表示する)
お礼
回答者様の検証結果はまったく問題ないです。 「続き」として新たな質問を立てました。どうかよろしくお願いいたします。
- mt2015
- ベストアンサー率49% (258/524)
ANo.7での私の回答中の > 補足文中にどこかに表をアップロードしたような記載がありますが、もしかしてその表の中でA4についても触れているのでしょうか。 > その表はどこにあるのでしょう? これに関しては質問に画像が付加されたことを確認できました。 サイトへの反映まで時間がかかるのかも知れませんね。 失礼しました。
- mt2015
- ベストアンサー率49% (258/524)
今度はA4の値ですか……。 何で後出しで色々と条件が出てくるのでしょう。 関数であれ、マクロであれ、条件が変わると無意味なものになります。 せっかくの回答を無意味なものにしないためにも一度に全ての条件を提示してください。 補足文中にどこかに表をアップロードしたような記載がありますが、もしかしてその表の中でA4についても触れているのでしょうか。 その表はどこにあるのでしょう? あと、度々文中に出てきて意味が解らない「A5からA4を減算し、結果は絶対値として計算する」これは一体どこの演算の話ですか? #最初はA7にA5-A4の結果を入れるのかと思いました。 もうこれ以上新しい条件が出てきても困りますので纏めましょう。 A6、A10は常に0です。 A7は A5<0 かつ A3=0 かつ A4<>0 の時に A5の値の絶対値、それ以外は0を表示 A8は A5<0 かつ A3=0 かつ A4=0 の時に A5の値の絶対値、それ以外は0を表示 A9は A5>0 かつ A3=0 の時にA5の値、それ以外は0を表示 A11は A5<0 かつ A3<>0 かつ A4<>0 の時に A5の値の絶対値、それ以外は0を表示 A12は A5<0 かつ A3<>0 かつ A4=0 の時に A5の値の絶対値、それ以外は0を表示 A13は A5>0 かつ A3<>0 の時にA5の値、それ以外は0を表示 コレで良いと思います。式は↓です。 A6:0 A7:=ABS(MIN(0,A5)*(A3=0)*(A4<>0)) A8:=ABS(MIN(0,A5)*(A3=0)*(A4=0)) A9:=MAX(0,A5)*(A3=0) A10:0 A11:=ABS(MIN(0,A5)*(A3<>0)*(A4<>0)) A12:=ABS(MIN(0,A5)*(A3<>0)*(A4=0)) A13:=MAX(0,A5)*(A3<>0)
お礼
希望どおりにできました!大変でしたがいろいろと学びました。お付き合いくださりありがとうございました!
- miso_kasu
- ベストアンサー率60% (6/10)
次の条件を確認させてください >(1)A5には以下の数式が入る =A4-A1-A2-A3 提示の数式は =A4-(A1+A2+A3) のようにしても結果は同じです。 =A4-SUM(A1:A3) のように置き換えることができます。 >(3)A5からA4を減算した結果を関数上では絶対数とする >セルA7に答えを示す。 条件が合致しているとき、A7セルへ(3)で求められた値えを表示するのですか? =ABS(A5-A4) を書き直すと =ABS((A4-A1-A2-A3)-A4) と同じです。 整理すると次のようになります。 =ABS(-A1-A2-A3) 前述のようにSUM関数を使うと =ABS(-SUM(A1:A3)) と同じ結果になります。 条件に一致しないときはA7セルへ何を表示しますか? mt2015さんへの補足については解読に時間が掛かりますので読み解いてから数式の提示をさせて頂きます。 尚、「A1が正数、A2が0、A3が0」を「A1が3000、A2が0、A3が0、A4が2000」のように仮の数値を提示して頂けると検証に役立ちます。 A7セルの例(正解ではないと思います) =IF(SUM(A1:A2),ABS(-SUM(A1:A3)),"条件に不一致")
補足
ご回答ありがとうございます。 > 条件が合致しているとき、A7セルへ(3)で求められた値えを表示するのですか? 意味がわかりません。なぜ「A7セル」へ「(3)で求められた(答え?)」となるのでしょうか? =ABS(A5-A4)または=ABS((A4-A1-A2-A3)-A4) はどこに入れる式ですか? > 条件に一致しないときはA7セルへ何を表示しますか? mt2015さんへの補足での述べましたが0です。 >A1が正数、A2が0、A3が0」を「A1が3000、A2が0、A3が0、A4が2000」のように仮の数値を提示 これは表にしてすでにアップしてあります。 よろしくお願いいたします。
- mt2015
- ベストアンサー率49% (258/524)
> > (4)~(6)と(7)~(9)の条件の違いが判りません。 > > 逆になぜ(4)~(6)または(7)~(9)なのかと思うのですが… 私も言葉が足りませんでした。(4)と(7)、(5)と(8)、(6)と(9)の違いが判りません。 (4)と(7)を例にします。 > (4)(入力)A1が正数、A2が0、A3が0(A5の結果)A5は負数→A7に絶対値として表示 > (7)(入力)A1が正数、A2が0、A3が0(A5の結果)A5は負数→A8に絶対値として表示 A1:1000、A2:0、A3:0、A4:900 の場合、A5=-100 になりますよね? この場合、(4)、(7)どちらに該当するのでしょう? それとも、両方該当でA7、A8共に100と表示なのですか?
お礼
私はExcel関数についてはまったくの初心者なもので、説明自体が難しくて難儀していたのでまず一部のケースをだしてここで質問しました。 それに対して回答をいただいてから本来の目的を述べるつもりでした。しかしmt2015様が私の望むパターンを提示していただいたので(またA2のミスの指摘も含め)嬉しく思い、またすごく理解が早い深い方だとお見受けしました。 やりとりをしていて私も混乱が収まってきたので、改めて質問しなおします。このような説明で大丈夫でしょうか? 【入力条件】 ・A4には必ず正数か0が入り負数は入れない ・A5には以下の数式が入る =A4-A1-A2-A3 ・A5からA4を減算し、結果は絶対値として計算する(A4には正数か0が入るため、A5の計算結果には0、正数、負数の3種類のいずれかになる)。 ・上記条件にあてはまなければすべて0とする 【入力の値の条件】 ・A1~A3には0か正数が入る。 ・いずれかのセルが正数ならば他のセルは0 ・たとえばA11が正数、A2が0、A3が0 というように3つのセルに対する正数と0の組み合わせは3パターンができる。 A1~A3の全パターン (1)A1➡5000、A2➡0、A3➡0 (2)A1➡0、A2➡5000、A3➡0 (3)A1➡0、A2➡0、A3➡5000 【結果の条件】 ・入力の値の条件(1)のパターンでは、A7に、 ・入力の値の条件(2)のパターンでは、A5にそれらの結果が正数(絶対値)として表示、 ・入力の値の条件(3)パターンではA11には0が表示されるようにする 【入力の全パターン】 ❶(入力)A1が正数、A2が0、A3が0➡(A5の結果)ゼロ➡(回答欄)A6に表示 ❷(入力)A1が0、A2が正数、A3が0➡(A5の結果)ゼロ➡(回答欄)A6に表示 ❸(入力)A1が0、A2が0、A3が正数➡(A5の結果)ゼロ➡(回答欄)A10に表示 ❹(入力)A1が正数、A2が0、A3が0➡(A5の結果)負数➡(回答欄)A7に表示 ❺(入力)A1が0、A2が正数、A3が0➡(A5の結果)負数➡(回答欄)A7に表示 ❻(入力)A1が0、A2が0、A3が正数➡(A5の結果)負数➡(回答欄)A11に表示 ❼(入力)A1が正数、A2が0、A3が0➡(A5の結果)負数➡(回答欄)A8に表示 ❽(入力)A1が0、A2が正数、A3が0➡(A5の結果)負数➡(回答欄)A8に表示 ❾(入力)A1が0、A2が0、A3が正数➡(A5の結果)負数➡(回答欄)A12に表示 ❿(入力)A1が正数、A2が0、A3が0➡(A5の結果)正数➡(回答欄)A9に表示 (11)(入力)A1が0、A2が正数、A3が0➡(A5の結果)正数➡(回答欄)A9に表示 (12)(入力)A1が0、A2が0、A3が正数➡(A5の結果)正数➡(回答欄)A13に表示 *(回答欄)の結果はすべて絶対値として表示
補足
>A1:1000、A2:0、A3:0、A4:900 の場合、A5=-100 になりますよね? はいそうです。 このようにA4に入れる値が正数と0の違いがあります。 A4には正数か0が入るため、A5の計算結果には0、正数、負数の3種類のいずれかになるということです。 ですのでこの場合、(4)になります。 アップした表を見てもらえばわかるように、A4に対する入力値は(4)の場合4000(ご回答者様の例ですと900)となりますが、A7の場合0です。 なので 900-(A1)1000(A4)=-100 となるように、後者の場合もたとえばA4を0とすると 0(A4)-1000(A4)=-1000 となります。 これらは絶対値とするので前者は100として、後者は1000として扱います。 いずれも正数ですので、A1~A3の入力パターンによって❹~(12)いずれか指定したセルにその結果をだす、ということです。
- mt2015
- ベストアンサー率49% (258/524)
そうそう、入力条件の > (3)AA5からA4を減算するが結果は絶対値として計算する は意味が解らなかったため無視させて頂きました。
- mt2015
- ベストアンサー率49% (258/524)
ANo.2で補足された全パターンで2つ目のA1は全てA2の間違いであると判断しました。 また、A4との関係が書かれていなかったので時間がかかりましたが、添付の図のようなことがしたいと理解しましたが合っていますか? その上でですが (4)~(6)と(7)~(9)の条件の違いが判りません。 あと、以前同じような内容で絶対値かどうかだけが異なる内容の質問をされていませんでしたか?以前の質問の回答で絶対値以外OKなら、ABS関数を使って絶対値にするだけです。
補足
>2つ目のA1は全てA2の間違い そのとおりです。とにかく焦っていましたので確認せず申し訳なかったです。 この表も希望どおりです。落ち着いて私も一応書きました(添付のとおりです)。 > (4)~(6)と(7)~(9)の条件の違いが判りません。 逆になぜ(4)~(6)または(7)~(9)なのかと思うのですが… (4)(入力)A1が正数、A2が0、A3が0(A5の結果)A5は負数➡A7に絶対値として表示 (6)(入力)A1が0、A2が0、A3が正数(A5の結果)A5は負数➡A11に絶対値として表示 (7)(入力)A1が正数、A2が0、A3が0(A5の結果)A5は負数➡A8に絶対値として表示 (9)(入力)A1が0、A2が0、A3が正数(A5の結果)A5は負数➡A12に絶対値として表示 という条件ですので、たとえば(4)と(6)ならば入力パターンの違いというだけです。 いずれにしても、この入力パターンに対する式が欲しいのです。 偽の値となった場合にはすべて0表示という条件を追加します。 もし(4)または(5)の場合はA7に回答が表示され、他のセルはすべて0となる式が欲しいのです。
- mt2015
- ベストアンサー率49% (258/524)
ANo.1です。 質問文が間違えている、又は内容が不足しているのでしょうか? > (3)A5からA4を減算した結果を関数上では絶対数とする と、あるのになぜA5:-1000、A4:4000 の時にA7が1000なのか解りません。 -1000-4000=-5000 の絶対値で5000となるのが条件通りだと思います。 > さらに > A11は相対する場所として0が自動で同時に入力される。 A11の話は補足で初めて出てきています。なんですかこれは?
補足
すみませんです。最初の質問ではわかりやすいように一部の例のみ提示しましたが、改めて質問します。 【入力条件】 (1)A5には以下の数式が入る =A4-A1-A2-A3 (2)A4には必ず正数か0が入り負数は入れない (3)AA5からA4を減算するが結果は絶対値として計算する (4)条件にあてはまなければすべて0とする 【入力の値のパターン】 たとえば ・A1が正数、A2が0、A3が0 の場合 ➡A5の結果が負数 ➡A7にA5の結果が正数(絶対値)として表示、 ➡同時に、A11には0が表示 同様、 ・A1が0、A2が正数、A3が0 の場合 ➡A5の結果が負数 ➡A7にA5の結果が0として表示、 ➡同時にA7には正数表示 このように、同セルに対し、2通りの条件の回答をだしたいのです。 入力の全パターンは以下のようになります。 ❶(入力)A1が正数、A1が0、A3が0➡(A5の結果)A5はゼロ➡A6に絶対値として表示 ❷(入力)A1が0、A1が正数、A3が0➡(A5の結果)A5はゼロ➡A6に絶対値として表示 ❸(入力)A1が0、A1が0、A3が正数➡(A5の結果)A5はゼロ➡A10に絶対値として表示 ❹(入力)A1が正数、A1が0、A3が0➡(A5の結果)A5は負数➡A7に絶対値として表示 ❺(入力)A1が0、A1が正数、A3が0➡(A5の結果)A5は負数➡A7に絶対値として表示 ❻(入力)A1が0、A1が0、A3が正数➡(A5の結果)A5は負数➡A11に絶対値として表示 ❼(入力)A1が正数、A1が0、A3が0➡(A5の結果)A5は負数➡A8に絶対値として表示 ❽(入力)A1が0、A1が正数、A3が0➡(A5の結果)A5は負数➡A8に絶対値として表示 ❾(入力)A1が0、A1が0、A3が正数➡(A5の結果)A5は負数➡A12に絶対値として表示 ❿(入力)A1が正数、A1が0、A3が0➡(A5の結果)A5は正数➡A9に絶対値として表示 (11)(入力)A1が0、A1が正数、A3が0➡(A5の結果)A5は正数➡A9に絶対値として表示 (12)(入力)A1が0、A1が0、A3が正数➡(A5の結果)A5は正数➡A13に絶対値として表示
- mt2015
- ベストアンサー率49% (258/524)
Excel的には、A1~A3が何であろうが計算式は同じですので、二通りの条件とは言いません。 単にA7に=ABS(A5-A4)、もっと整理すれば=ABS(A1+A2+A3) です。
補足
ご回答ありがとうございます。 2通りというのは ❹A1が正数、A2が0、A3が0 ❺A1が0、A2が正数、A3が0 の入力パターンのことです。 質問を繰り返します。 たとえば A1=5000 A2=0 A3=0 という場合、 =IF(A1>0,A2=0,A3=0) でよいかと思います。 A4には計算元となる4000を入れます。 A5には「=A4-A1-A2-A3」が入ります。 するとこの回答は-1000です。 A7に1000(絶対値とする)と表示されるのが一つの目的。 さらに A11は相対する場所として0が自動で同時に入力される。 このような関数式を求めてます。 ですのでご回答の式では求めている答えがでません。
補足
やっと希望どおりにできました。ありがとうございます! 後学のためにも数式の解説をぜひお願いします。 ただ実際の表にはA1~A4の間に2つのセル(行)があります。 このための式を作らないと現実的には完成しません。 数式を教えていただいて、自分で考えてやってみようかと思いますが、ちょっと複雑な式ゆえ、超初心者の私に難儀かもしれませんが、そのときはその画像(画像を削除してしまうと同じ質問には再アップできませんので)のための新しい質問を立てますので、また回答お願いします。 この件はそこで終わりにしたいと思いますのでよろしくお願いいたします!