[[20230323104325]] 『数式を教えてください』(教えてくん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『数式を教えてください』(教えてくん)

 いつも勉強させていただいてます。
 以下について教えてください。

 下のような表があります。

     |[A] |[B]       |[C]     |[D]   |
 [1] |明細|参照データ|チェック|参照元|
 [2] | あ |     a    |    1   |   a  |
 [3] | い |     1    |    2   |   1  |
 [4] | う |          |    1   |      |
 [5] | え |     2    |    1   |   2  |
 [6] | お |     b    |    2   |   b  |

 B2〜B6セルは表示は空白となっていても、B2 = IF(D2<>"",D2,"")のような数式が入力されています。
 また、D列は形式は標準で、文字列や数値が入っています。

 ★ここで、質問です。
 作業列を使わず、C列のチェックが「1」、かつ、B列に表示されている参照データが「空白ではない」行数をワークシート関数で算出する場合、どのような数式になりますか?
 上記の場合は、2行目と5行目の「2」行となります。

 COUNTIFS関数を使うと、見た目が空白であっても数式が入っていると「空白でない」とみなされて、4行目もカウントされて「3」行となってしまうので困っている次第です。
 以上、よろしくお願いいたします。

< 使用 Excel:Microsoft365、使用 OS:Windows11 >


 D列は数式の結果ではないのなら

 =COUNTIFS(C2:C10,1,D2:D10,"<>")

 これで「2」になりますけど?

 以上
(笑) 2023/03/23(木) 10:57:14

 あくまで B列を対象にして、ということなら

 =SUM((B2:B10<>"")*(C2:C10=1))

 参考まで
(笑) 2023/03/23(木) 11:04:46

 ごめんなさい。希望の要件を正しくお伝えできていませんでした。

 B列とC列を引数にするかたちにしたいです。

 よろしくお願いいたします。

(教えてくん) 2023/03/23(木) 11:09:43


B2の式をみますとCOUNTIFS関数の調べる列をD列にできると
思うのですが何か不都合がありますか?

=COUNTIFS(C2:C6,1,D2:D6,"<>")

あくまでもB列で調べるならば

=SUMPRODUCT((C2:C6=1)*(B2:B6<>""))

まだ他にもあるでしょうが・・・
(メジロ) 2023/03/23(木) 11:12:54


 で、↓ を試した結果はどうなったんですか?

 =SUM((B2:B10<>"")*(C2:C10=1))

 365ですよね?

 以上、確認だけ
(笑) 2023/03/23(木) 11:14:46

 笑さん、メジロさん

 ご回答有難うございます。
 正しい結果が表示されました。

 あと、質問しておいて何なんですが、試しにChatGPTに同じ質問をしてみました。
 すると以下の答えが返ってきました。

 =SUMPRODUCT(--(B:B<>""),--(C:C=1))

 これも正しい結果が表示されるんですが、この数式内の「--」はどういう意味でしょうか?
 ちなみに「--」を取ると正しい結果とはなりません。
 話がそれて申し訳ありませんが、これについても教えてください。
 よろしくお願いいたします。

(教えてくん) 2023/03/23(木) 11:26:51


 >この数式内の「--」はどういう意味でしょうか? 

 その「-」はマイナス符号。
 それを2つ重ねることで「1」を掛けるのと同じ結果になります(-1 × -1)

 B:B<>"" とか  C:C=1 の結果は論理値(TRUE、FALSE)になるので
 --(B:B<>"") とすることで、TRUE → 1、FALSE → 0 に変換しています。

  ↓ でも同じだと思います。
 =SUMPRODUCT((B:B<>"")*1,(C:C=1)*1)
 =SUMPRODUCT(N(B:B<>""),N(C:C=1))

 参考まで
(笑) 2023/03/23(木) 11:44:02

 笑さん

 解説いただき有難うございます。
 理解できました。

 アメリカでは「*1」とかにするよりも「--」が主流なのか、はたまたChatGPTの癖なのか。
 よく分かりませんが納得です。
 有難うございました。

(教えてくん) 2023/03/23(木) 11:50:52


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.