• ベストアンサー

SUMPRODUCTにて特定の文字以外をカウントする方法

Excelの関数SUMPRODUCTにて、特定の文字以外の文字が入ったセルを カウントする方法を探しています。 以下の式に代入、又はこう直した方がいいなどアドバイスがございまし たら宜しくお願い致します。 【式】 =SUMPRODUCT((A!F3:F5000<>"")-(A!F3:F5000,"障害")) 【式の解説】 =SUMPRODUCT((A!F3:F5000<>"") ←F3からF5000で文字が含まれてるセルを指定 -(A!F3:F5000,"障害")) ←F3からF5000で「障害」の文字が含まれていないセルを指定 【やりたい事】 ・F3からF5000で、「障害」以外の文字が含まれてるセルを指定し、  カウントたい 以上宜しくお願い致します。

noname#101704
noname#101704

質問者が選んだベストアンサー

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

一例です。 =SUMPRODUCT((A!F3:F5000<>"")*(A!F3:F5000<>"障害"))

noname#101704
質問者

お礼

おかげさまで解決出来ました! ありがとうございます。

その他の回答 (2)

回答No.3

#1です。もしかしたら、 =SUMPRODUCT((A!F3:F5000<>"")-ISNUMBER(SEARCH("*障害*",A!F3:F5000))) かも。ちなみに、 >=SUMPRODUCT((A!F3:F5000<>"")-(A!F3:F5000,"障害")) =SUMPRODUCT((A!F3:F5000<>"")-(A!F3:F5000="障害")) でしょう。で、この数式と完全に一致するのは 回答#2のmu2011さんの回答です。

noname#101704
質問者

お礼

ご解答ありがとうございます。 今回は#2さんの解答を使わせていただき、 解決する事が出来ました。 機会があったらこのやり方も試してみたいと思います。 ありがとうございました。

回答No.1

=COUNTA(A!F3:F5000)-COUNTIF(A!F3:F5000,"障害") なんて方法もあります

関連するQ&A

  • ExcelのSUMPRODUCTで文字の入ったセルをカウントする方法

    Excelの関数SUMPRODUCTを使って、以下のような式で文字の入ったセルを カウントしようとしましたが出来ませんでした。 【式】 =SUMPRODUCT((A!E3:E5000="")*(((A!B3:B5000*1>=U52*1)*(A!B3:B5000*1<=V52*1)))) 【式解説】 =SUMPRODUCT((A!E3:E5000="") ←シート「A」の「E3」から「E5000」の範囲で文字が入っているものをカウント。 *(((A!B3:B5000*1>=U52*1) ←「U52」は当週の開始日。(7月1日) シート「A」の「B3」から「B5000」の範囲でこの日付より大きい日を条件にする。 *(A!B3:B5000*1<=V52*1)))) ←「U52」は当週の終了日。(7月7日) シート「A」の「B3」から「B5000」の範囲でこの日付より小さい日を条件にする。 【やりたい事】 ・シートAのE3からE5000の範囲の列で、文字が入ってるセルをカウントしたい。 ・日付の範囲を7月1日~7月7日(週)に指定したい。 この関数でどこを直せばいいでしょうか? 又、他にこうすればいい等アドバイスがありましたら 宜しくお願い致します。

  • Excel関数で特定のセルが空白の場合にカウントするよう設定したい(SUMPRODUCT)

    SUMPRODUCTを使い「A!D3:D10000」のセルが空白の場合、 カウントするよう設定したいのですが方法が分かりません。 設定したい式は以下となります。 【設定したい式】 =SUMPRODUCT((A!D3:D10000>=A!C3:C10000)*(A!F3:F10000<>"")*(A!F3:F10000<>"障害")*(((A!B3:B10000>=U59*1)*(A!B3:B10000*1<=V59))*(A!C3:C10000<>"")) 【式解説】 =SUMPRODUCT((A!D3:D10000>=A!C3:C10000) ←A!C3:C10000よりD3:D10000が大きい場合を指定 *(A!F3:F10000<>"") ←A!F3:F10000が空白じゃない場合を指定 *(A!F3:F10000<>"障害") ←A!F3:F10000障害じゃない場合を指定 *(((A!B3:B10000>=U59) ←A!B3:B10000がU59以上の場合を指定 *(A!B3:B10000*1<=V59)) ←A!B3:B10000がV59以下の場合を指定 *(A!C3:C10000<>"")) ←A!C3:C10000が空白じゃない場合を指定 【やりたい事】 A!D3:D10000のセルが空白の場合、カウントするよう設定したい 以上宜しくお願い致します。

  • エクセルのSUMPRODUCT関数についての質問

    SUMPRODUCT関数を使って、1列おきにカウントさせる式をつくっていて、 セルの指定方法について疑問をもちましたので質問させていただきます。 A1からJ1に数字がはいっているとして、偶数列だけカウントします。 =SUMPRODUCT((MOD(COLUMN(A:J),2)=0)*(A1:J1<>0)) =SUMPRODUCT((MOD(COLUMN(A:J),2)=0)*((A1:J1)<>0)*1) 上の式で答えはでるのですが、*以降の指定の違いがわかりません。 どなたかお分かりになる方おられましたら、よろしくお願いします。

  • SUMPRODUCTの応用

    添付のように『7.2.1.2』のような章の前から3文字(.(コンマ)を除く)でカウントする方法を考えております。前提として他のセルにLEFT関数で3文字だけを取り除くということをせずにSUMPRODUCT関数を使ってするにはどうしたらいいでしょうか。 SUMPRODUCTにLEFT関数を合体などできるものでしょうか。

  • Excelで飛び飛びのセルにある文字をカウントする

    jcb3092と申します、教えて下さい。 Excel2002を使用しています 飛び飛びに離れた場所のセルに入っている特定の文字 例えば"○""×""△"等を指定してカウントする関数がありまし らご教授頂けますようお願い申し上げます。

  • Googleスプレッドシートで空白以外の指定方法

    Googleドライブにアップしたスプレッドシートで、COUNTIFまたはSUMPRODUCT関数を使って複数条件を指定する式を考えてます。 その際、空白以外のセルという条件を指定したいのですが、エクセルの関数で指定できる「"<>"」が認識されません。 どのような条件を指定したらいいでしょうか。 このような関数を考えてます。 SUMPRODUCT((A1:A10=”文字列”)*(B1:B10="<>")) どなたか教えていただけませんでしょうか。 どうぞよろしくお願いします。

  • 文字列AかBを含むセル数をSUMPRODUCT関数で求める場合

    文字列AかBを含むセル数をSUMPRODUCT関数で求める場合 エクセル2000です。 A1:A10のセル範囲だとして =SUMPRODUCT(ISNUMBER(FIND({"A","B"},A1:A10))*1) とすると、同一セルにA、Bの両方があった場合、重複してカウントされてしまいます。 重複を除外するために、 =SUMPRODUCT(ISNUMBER(FIND({"A","B"},A1:A10))*1)-SUMPRODUCT(ISNUMBER(FIND("A",A1:A10))*ISNUMBER(FIND("B",A1:A10))) と、重複してカウントされた数から両方が存在するセルの数を減じて求めましたが、以下のようなより簡素な式でも求められことがわかりました。 =SUMPRODUCT((ISNUMBER(FIND("A",A1:A10))+ISNUMBER(FIND("B",A1:A10))>=1)*1) この式でなぜAB両方があるセルが重複カウントされないのかどうもわかりません。 ご教示いただければ幸いです。 なお、SUMPRODUCTではなく =SUM(COUNTIF(A1:A10,{"*A*","*B*"}))-SUM(COUNTIF(A1:A10,{"*A*B*","*B*A*"})) でもできることは存じておりますが、今回はSUMPRODUCTの疑問として質問いたしました。

  • SUMPRODUCTでのブランクカウント方法

    検索しきれず、重複した質問でしたらご容赦ください。 Excelでの関数SUMPRODUCTに関する質問です。 A列        B列          C列 みかん      2011/11/30     2011/11/30 みかん      2011/11/30 みかん      2012/11/30     2011/11/30 みかん      2012/11/30     2012/11/30 上記のような表(10行あるとします)で、A列がみかん、且つ、B列が2011/11/30、且つ、C列が2011/11/30もしくはブランクのものをカウントしたいです。この例だと結果が2となるのを望みます。 =SUMPRODUCT((A1:A10="みかん")*(B1:B10="2011/11/30")*(C1:C10="2011/11/30"))+SUMPRODUCT((A1:A10="みかん")*(B1:B10="2011/11/30")*(ISBLANK(C1:C10))) 色々試したのですが、この式考えるまでで断念してしまいました。何卒ご教示下さい。

  • 特定のセル範囲で4文字以上入力されているセルの数をカウントしたい

    特定のセル範囲で4文字以上入力されているセルの数をカウントしたいと思っています。 VBAで記述すれば簡単なことだと思いますが、これくらいなら関数でもできそうだと思い チャレンジしてみましたが挫折しました…。 関数の引数に「A1:C5」などという感じで範囲を指定する記述で できれば短くシンプルな記述を希望しています。 よろしくお願いします。

  • COUNTIFで特定の文字列を含む値のカウント方法

    Excel2010を使っている者です。 COUNTIF関数で特定の文字列を含むセルの数をカウントしたいのですが、結果がゼロになってしまいます。 具体的には A列の1行目から900行目までに以下のように番号が振ってあって、その中で1994を含むセルの数を数えようと思っています。 計算式として「=COUNTIF($A$1:$A$900,"1994")」と入力したのですが、戻り値が0になってしまいます。 なお、A列は数値にしても文字列にしても結果は変わらず、「=COUNTIF($A$1:$A$900,"1994*")」とワイルドカードを使った検索にしても同じく0になってしまいます。 1994000001 1994000002 1994000005 ~ 2009111112 2009111117 もう一つ関連した質問をさせていただきますが、そもそもこの関数で特定の文字列を含む検索をかけたいときは、ワイルドカードの*を使わないとうまく計算できないものなのですか? よろしくお願いいたします。

専門家に質問してみよう