• ベストアンサー

空白のセルのカウントについて

インターネット等で色々検索したのですが、うまく回答が導き出せなかったのでこちらで質問させていただきます。 添付したような表があるとき、B列にある空白のセルを都道府県別にカウントするにはどのようにしたら良いか教えてください。 例には都道府県を使用しましたが、実際には1000行を超えるデータとなりA列には同じ値が入力されます。 結果として 北海道:1 愛知:2 東京:2 福岡:0 というような答え導き出す方法を教えてください。 よろしくお願いします。

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

  • ベストアンサー
  • matyu1003
  • ベストアンサー率42% (257/598)
回答No.1

適当なセルに、 =SUMPRODUCT((A1:A10="北海道")*(B1:B10="")) で、北海道は1になります。また、"北海道"の部分を他の都道府県にすれば、同様に望む結果を得られますよ。

yushapapa
質問者

お礼

ありがとうございます。 都道府県の場合はこれで問題なくできたのですが 実際のデーターの中には数値が含まれており その計算結果が0になってしまいました。 これは直す方法はあるのでしょうか?

その他の回答 (2)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! 横からお邪魔します。 No.1さんのお礼欄の件について・・・ 数式内の「北海道」は文字列ですので、ダブルクォーテーションで囲みます。 数値の場合はダブルクォーテーションなしでそのまま数値にすればOKです。 ところで他の方法の一例です。 ↓の画像でSheet1のデータをSheet2にまとめるようにしてみました。 Sheet1のC列を作業列として設けています。 作業列C2セルに =IF(COUNTIF($A$2:A2,A2)=1,ROW(),"") という数式を入れオートフィルでずぃ~~~!っと下へコピーしておきます。 そしてSheet2のA2セルに =IF(COUNT(Sheet1!C:C)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!C:C,ROW(A1)))) B2セルに =IF(A2="","",SUMPRODUCT((Sheet1!$A$1:$A$1000=A2)*(Sheet1!$B$1:$B$1000=""))) という数式を入れ、A2・B2セルを範囲指定 → B2セルのフィルハンドルで下へコピー! これで画像のような感じになります。 ※ SUMPRODUCT関数は配列数式になりますので、データ量が極端に多い場合はPCにかなりの負担を掛けますので VBAなど、他の方法の方が良いと思います。 (1000行程度であれば問題ないかもしれません) 参考になりますかね?m(_ _)m

yushapapa
質問者

お礼

どうもありがとうございます。 ””をとればよかったのですね。単純な見落としをしていました。 いろいろデータを入力してみて使い比べたのですが 私のスキル不足なのかうまく使いこなせませんでした… 今後、使う機会があれば活用させていただきます

  • M_Sato
  • ベストアンサー率54% (550/1003)
回答No.2

ピボットテーブルの機能を使えば、自動的にカウントされます。 手順は (1)表の1行名に項目名(例:A1…都道府県、B1…都市)を入れておく。 (2)メニューバー>データ>ピボットテーブル (3)ピボットテーブル・ウィザードが表示されたら規定値のまま 次へ>次へ>完了 (4)空白のレポートの表が表示されたら   1)行のフィールドをドラッグする欄に「都道府県」の項目をドラッグする   2)同じ欄に「都市」の項目もドラッグする   3)データアイテムをドラッグする欄(中央)に「都道府県」の項目をドラッグする これで、空白も含めた都市ごとの集計数が表示されます。

関連するQ&A

  • Excel2003で、指定列に空白セルのある行の数をカウントしたいので

    Excel2003で、指定列に空白セルのある行の数をカウントしたいのですが。 下記の様なセルがあり、A列とC列が共に空白の行の数をカウントしたいのですが どの様にすれば良いでしょうか? (3行目と6行目がA列とC列のセルが空白なので、「2」を表示したいのです)  ABC 1あか 2い さ 3 き 4う 5え し 6 く 7 けす 宜しくお願い致します。

  • 複数条件指定に合った,空白以外のセルのカウント

    A  B    C 1月 北海道  1月 北海道 3150 2月 北海道 2500 1月 宮城  4300 2月 宮城    1月 愛知  3150 のような表があり,A列が1月かつB列が北海道かつC列 が空白以外のものをカウントしたい(C列の数値の合計を出すのではなく何件当てはまるか数を数えるのが目的)のですが, SUMIF(配列関数?)を使ってD列は全て1にして上記の三つの条件に当てはまる行のD列の1を足して,該当件数をカウントする.という方法でできないかと思ったのですが, 数式の立て方がいまいち分からずエラー頻発で困っております. 他に簡単な方法があれば何でもいいので EXCEL関数に詳しい方どうか教えてください. よろしくお願いします.

  • Excelで隣のセルが空白の場合にカウントする方法

    (ケース1) Excelで右隣のセルが空白となっているセルの数を知りたいのですが、どのような数式・関数を使えば可能でしょうか? (ケース2) Excelで左隣のセルが空白となっているセルの数を知りたいのですが、どのような数式・関数を使えば可能でしょうか? (例) A列  B列 333 123 444 456 空白 321 555 567 空白 258 空白 159 666 258 777 空白 (ケース1)この場合のカウントを、A列1としたい。 (ケース2)この場合のカウントを、B列3としたい。 ご教授のほどよろしくお願いします。

  • 2つの列の空白セルのカウント

    A列とB列に数字が入っている表があるとして、まずA列が空白であり、 かつB列も空白であるデータの個数ををカウントしたいのですが、 どういう式で解決できるでしょうか。 COUNTBLANKで試みましたが、複数条件ではうまくいかず困っています。

  • [マクロ]値に変換しても、空白のセルがカウントされてしまいます。

    式が入っているセルを値に変換し、値が入ってるセルだけをカウントさせたいのですが、もともと式が入っていた空白になっているセルもカウントしてしまいます。 値の変換の仕方が間違っているのでしょうか? それともカウントの仕方が良くないのでしょうか。 値に変換するのは自動記録のマクロを作成しました。 カウントは、COUNTA関数をVBAで使用しています。 空白のセルをカウントさせない方法を教えてください。 マクロ・VBA初心者なので、値に変換するVBAも合わせて教えていただけると勉強になります。 よろしくお願いいたします。

  • 空白セルに自動で値を入れたい

    どなたかご教授賜りたく・・・。 エクセルの表(具体的にはピボットテーブルをコピーして値を貼り付けた)で、列ごとで値と空欄のセルが混在しています。 基本的に空白はその列の直近の上の値が入ります。 1行空欄ならそのすぐ上の値、2行空欄があってもやはり上の直近の値が入ります。 例)    A 1 ○○○   2 3 ○△○ 4  5     ↓    A 1 ○○○   2 ○○○ 3 ○△○ 4 ○△○ 5 ○△○ という風にしたいのです。 現在、オートフィルタで空白だけをソートして、Ctrl+Dをひたすら押し続けて上の値をコピーしていますが、数百行もあれば手の指が疲労して硬直してしまいます。 関数を使って自動で入れる方法はありませんでしょうか?

  • Excel/指定のセル間の空白をカウント

    Excelの関数についての質問です。 ある範囲内で”指定の値のセル(1)”と”指定の値のセル(2)”を検索しその間の”空白セル”の数をカウントしたいんですが、方法はありますでしょうか。 例えば、「範囲:A1~Z1」、「指定値を含むセル:C1((1))、W1((2))」の間で空白のセルのカウントをする場合です。※範囲の間のセルには空白セルと文字入力されたセルがある前提です。 以下の様にMATCH関数を使用すれば、全てのセルの数をカウントできるのですが、それでは、空白 のセルだけという条件に当てはまらず、目的を達成出来ません。 ■MATCH((2),A1:Z1,0)-MATCH((1),A1:Z1,0)=20 何か良い方法はありますでしょうか?

  • 空白セルをデータと認識してしまいます

    Excel2003を使用しています。 「マクロの記録」を使って、あるリストを自動作成 しようとしているのですが、うまくいきません。 A,B2つの列に分かれたデータを連結させるため、 C列に「CONCATENATE」関数を入れて適当な行まで コピーします。(それ以上はデータが入らないだろうと思われる100行目ぐらいまで) その後C列をコピーし、「値貼付け」をして 関数を値に変えます。 そうすると、たとえば実際には20行目までデータが 入っていたとすると、21行目~100行目までは 空白になりますよね? でも、どうもその空白行もデータとみなされている ようなんです…。 Range("C2").End(xlDown).Row で下端セルを探そうとすると、100行目に なってしまいますし、「ジャンプ」で空白セルを 探しても、同じ結果になります。 空白セルを選んで一度「Delete」を押すと 正しく「空白」と認識するようなのですが…。 「実際にデータの入っているセルとそうでないセル」 を自動で判別させたいので、 簡単に「何も入っていないセルを”空白”と正しく 認識させる方法」はありませんでしょうか?

  • セルに文字と数字が混在しているセルのカウント

       A  B   1   杉  A 2 2松  B 3   3   A 4   杉  B 5  林  A 6 1森  A  というセルがあります。 ここでA列は数値が含まれているセル B列はAという行の数をカウントしたいと思います。 この表でこの条件だと3行と6行が該当しますので 答えは2になります。 どう関数を使えばいいでしょうか?

  • エクセル 空白セルの直前の数字の個数を抽出したい

    エクセルでA1~A27に下のような値と空白のセルが入っています。 空白セルの直前の数字だけ個数を関数を用いて自動でカウントしたいのです。下の表でいうと、 「3」・・・1個 「5」・・・2個 「7」・・・1個 という風に数えたいのですが、どのような関数を用いたらよいのでしょうか。エクセル関数初心者です。よろしくお願いします。 【例表】 空白セル 空白セル 7 6 5 4 3 2 1 空白セル 5 4 3 2 1 空白セル 空白セル 空白セル 3 2 1 空白セル 5 4 3 2 1

専門家に質問してみよう