[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『FILTERの簡単な数式について』(たけちゃん)
いつも勉強させていただいております。 おそれいりますが、以下について教えてください。
| [A] | [B] | [C] | [D] | [E] | [ 1]|注文番号| みかん | バナナ | りんご | 〇カウント | [ 2]| A001 | × | 〇 | × | 1 | [ 3]| A002 | × | × | × | 0 | [ 4]| A003 | × | 〇 | 〇 | 2 | [ 5]| A004 | × | × | × | 0 | [ 6]| A005 | 〇 | 〇 | × | 2 | [ 7]| A006 | × | × | × | 0 | [ 8]| A007 | 〇 | 〇 | 〇 | 3 | [ 9]| A008 | × | 〇 | 〇 | 2 | [10]| A009 | × | 〇 | × | 1 | [11]| A010 | 〇 | 〇 | 〇 | 3 |
上記のような表があります。
[E]列は E2 = COUNTIF(B2:D2,"〇") ※下にフィルコピー
ここで、「みかん」・「バナナ」・「りんご」の「いずれか2つが「〇」のものを抽出する数式」として以下としました。 A13 = FILTER(A2:D11,E2:E11=2) この数式では問題なく抽出されます。
作業列を使いたくなかったので以下としました。 A13 = FILTER(A2:D11,(B2:B11="〇")*(C2:C11="〇")*(D2:D11="×")+(B2:B11="〇")*(C2:C11="×")*(D2:D11="〇")+(B2:B11="×")*(C2:C11="〇")*(D2:D11="〇")) この数式でも問題なく抽出されますが、果物の種類が増えた場合、〇×のパターンも増え、数式が今以上に冗長になってしまいます。
●ここで質問ですが、作業列を使わないで、もっと簡単に「いずれか2つが「〇」のものを抽出する数式」にするには、どのような数式にすればよいでしょうか? できれば、果物の種類が増えた場合を考慮して、「いずれか2つ以上が「〇」」とか「いずれか3つが「〇」」とかに対応できるような、拡張性の高い数式をお教え願いたいです。
以上、よろしくお願いいたします。
< 使用 Excel:Microsoft365、使用 OS:Windows11 >
=LET(_rng,A2:D11,FILTER(_rng,BYROW(_rng,LAMBDA(_a,COUNTIF(_a,"〇")=2))))
(d-q-t-p) 2023/03/09(木) 10:59:36
早速のご回答有難うございます。
教えていただいた式、やってみました。
うまくいきました! すごい!!
ただし、個人的には LET を使ったことないので、これから式の意味等調べようとは思うのですが、何というかもう少し馴染みのあるような式で実現はできないものでしょうか?(お前の馴染みとか知るか!って言われそうですが・・・)
(たけちゃん) 2023/03/09(木) 11:22:28
現在365で確認できないのでうまくいかない場合はすまない。 =FILTER(A2:D11,COUNTIF(INDIRECT("A"&ROW(2:11)&":"&"D"&ROW(2:11)),"〇")=2) ではどうだろうか? (ねむねむ) 2023/03/09(木) 11:33:57
=FILTER(A2:D11,MMULT(IF(B2:D11="〇",1,0),{1;1;1})=2) ではどうでしょう (´・ω・`) 2023/03/09(木) 11:53:12
ご回答有難うございます。
教えてきただいた式を試してみましたが、どちらも「#CALC!」が出ました。
どこか変えたらうまくいくのでしょうか?
(たけちゃん) 2023/03/09(木) 12:39:38
ごめんなさい。申し訳ないです。
両方うまくいきました。
(たけちゃん) 2023/03/09(木) 12:46:09
(たけちゃん) 2023/03/09(木) 12:49:14
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.