- ベストアンサー
EXCEL関数 conuntif式の簡略化
EXCELの次の式のような「同じ範囲」の中の、 指定した文字だけを数える式にしたいのですが、 式が長くなりますので、簡略化した式を教えてください。 式に関係はないと思いますが、式の範囲の中には、非表示の列や行が多数あります。 =COUNTIF(F6:AM6,"G")+COUNTIF(F6:AM6,"ク")+COUNTIF(F6:AM6,"A")+COUNTIF(F6:AM6,"B")+COUNTIF(F6:AM6,"C") ご指導宜しくお願いいたします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
そのくらいなら配列定数を使えばいいでしょう。 =SUM(COUNTIF(F6:AM6,{"G","ク","A","B","C"}))
その他の回答 (4)
- bunjii
- ベストアンサー率43% (3589/8249)
COUNTIF関数で抽出する理由は何ですか? 他のSUMPRODUCT関数でも良いと思います。 =SUMPRODUCT(N(F6:AM6={"G";"ク";"A";"B";"C"}))
お礼
早速ご指導は 短い・計数したい見時の追加し易い数式ですね、 試用させていただきます。 ありがとうございました。
- iyonohanamuko
- ベストアンサー率54% (6741/12374)
配列数式を取り入れないのであればそれが一番簡略した形ではないでしょうか? COUNTIFS関数ではだめなんでしょうか…? また、作業列を設けて合計させるのはだめなんでしょうか…? 数式が煩雑になる場合は作業列を設けるのが一般的かと思います。 あとDCOUNT関数を使用したり… conuntif式縛りはきついですね…。
お礼
早速ご指導を試用させていただきます。 ご指導ありがとうございました。
- imogasi
- ベストアンサー率27% (4737/17069)
下記のような例なら、文字部分を配列的に書いて数えられる。 例 サイズのデータとして B2:B10 LL LL M M S M LL M ーーー LLとSのセルを数えたい場合、 どこか答えを出すセルに =SUMPRODUCT((B1:B10={"LL","S"})*1) で 5 このやり方では、セルの文字の一部文字列指定でなく、1セル全体の値をチェックする場合です。 またB1:B10の部分が複数列では使えない。質問のケースでは使えないが、参考に。 SUMPRODUCTは、配列数式の利用を避ける場合の常套手段です。
お礼
早速ご指導は 短い・計数したい見時の追加し易い数式ですね、 試用させていただきます。 ありがとうございました。
- imogasi
- ベストアンサー率27% (4737/17069)
遣りたいことを質問に、文章で記すこと。 質問者の式が適当かどうか、その説明文章(目的)を見ないと、判断できないから。 初心者で、思い付きで、珍奇なやり方を考えて、それについて質問している例をよく見かけるから。 普通のニーズでは、それぞれの文字1字の出現セルの数を足し合わせることは想像しがたいが。
お礼
質問内容の整理と見直しを致します。 早速のご指導ありがとうございました。
お礼
短い・計数したい見時の追加し易い数式ですね、 試用させていただきます。 早速のご指導ありがとうございました。