• ベストアンサー

特定の文字等をカウント

エクセルでのカウント方法のヒントをください | A列 班名 |  B列 日付 | ------------------------------------- | 東京    | 7/28 | ------------------------------------- | 福岡    | 7/28 | ------------------------------------- | 東京    | 入力なし | ------------------------------------- | 福岡    | 7/28 | ------------------------------------- 上記の様表があるとします A1には東京 B1には 日付入力あり A2には福岡 B2には 日付入力あり A3には東京 B3には 未入力 A4には福岡 B4には 日付入力あり 結果表示としては 東京で 日付か入力されている数は 1 福岡で 日付か入力されている数は 2 このようなカウントの仕方をしたいのですが 教えて頂けませんか

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

  • ベストアンサー
  • maron--5
  • ベストアンサー率36% (321/877)
回答No.3

    A     B    C     D    E 1   東京   7/28       東京   1 2   福岡   7/28       福岡   2 3   東京 4   福岡   7/28 E1=SUMPRODUCT(($A$1:$A$10=D1)*($B$1:$B$10<>"")) ★下にコピー

IROIRO3
質問者

お礼

有難うございます 参考になりました 今度質問する際には 投稿をよく見て わからない内容を 質問したいと思います なかなか 探しきれずすみません なにか よい教材等参考書とうありましたら教えて下さい ここのサイトが一番の教材かもしれませんが 自力で出来ればよいのですが

その他の回答 (4)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.5

なぜ質問が出たか (1)条件が2つある(A列、B列) 毎日のようにこの質問コーナーに出る。見てないのかな。質問者と 回答者が別れているということか。 =SUMPRODUCT関数が定番になっている。 配列数式やDCOUNT関数でも出来るが、人気がない。 その仕組みを下記に例で説明します。 エクセル2007になると換わるようだが。 (2)B列は日付 日付はセルの「値」は日付シリアル値という整数です。1900年1月1日より何日目かの数です。それを知っていれば、取り立てて、取り上げることはない。この質問は未入力を問題にしているので、まあ 関係ないが (3)未入力はセルの値はどうなっているのか。関数は未入力の場合 どう捉えるのか判らないって言うことか。 ーー 今回は件数を数えるので、C列の計数を加えるのでない。この点少し 簡単 ーー 例データ 班名&nbsp; 日付 東京 7月28日 福岡 7月28日 東京 福岡 7月28日 ーー E2に東京がある場合 =SUMPRODUCT((A2:A5=$E$2)*(B2:B5="")*1) A2:A5=$E$2とは、これはA2:A5の各行について これを判別している。 =(A2:A5=$E$2)に対して、2-5行の値は TRUE FALSE TRUE FALSE ーー =B2:B5=""に対して2-5行の値は FALSE FALSE TRUE FALSE ーー TRUEを1、FALSEを0として 同行の両者を掛ける(PROSUCT)と 0 0 1 0 これを加える(SUM)と 1になります。これで条件を満たす行数がでる。 こういう理屈です。

IROIRO3
質問者

お礼

有難うございます 参考になりました 今度質問する際には 投稿をよく見て わからない内容を 質問したいと思います なかなか 探しきれずすみません

回答No.4

次の式を入力してCtrlとShiftを同時に押しながらEnterを押下してください。 =SUM((A1:A4="東京")*(B1:B4<>0)*(1)) =SUM((A1:A4="福岡")*(B1:B4<>0)*(1)) 式を入力したセルにカウントが表示されます。 式を変更するときも必ずCtrlとShiftを押しながらEnterを 押下してください。 Enter押下時はセル位置は通常と違って下のセルに移らず そのセル位置のままで、式には前後に{}が付加されます。 また、たとえば5行A列に東京6行A列に福岡を入力しておいて "東京"の代わりにA5、"福岡"の代わりにA6を指定してもかまいません。 式そのものは、例えば5行B列、6行B列に入力します。 それと、 =SUM(($A$1:$A$4=$A5)*($B$1:$B$4<>0)*(1))と入れると 二行目の式はドラッグで作成できます。 また、最後の(1)の変わりにセルの範囲を指定するとその範囲の 対象が集計されます。 この指定はAND条件でカウントするときに便利です。

IROIRO3
質問者

お礼

回答有難うございました まだまだ 判らないことばかりですが また なにかありましたらよろしくお願いします

  • shintaro-2
  • ベストアンサー率36% (2266/6244)
回答No.2

>リアルタイムに見られる 表にはならないでしょうか countifを使えばokです 表とは別に、抽出条件を記入した表を作成しcountifをつかいます dcountaも使えます 日経PC21によくエクセルの連載がありますので、一度ご覧ください。 

参考URL:
http://pc.nikkeibp.co.jp/pc21/index.shtml
IROIRO3
質問者

お礼

回答有難うございました いろいろと やりたいことはあるのですが うまくいきません またよろしくお願いします

  • shintaro-2
  • ベストアンサー率36% (2266/6244)
回答No.1

オートフィルタを使えば簡単です。 もう1列、1という数値の入った列を追加します。 データの数だけ、入力してください。f列2から100とします そして、一番下に、subtotal(9,f2:f100)でその列の数字の合計を出しておきます。 表全体にオートフィルタをかけます。 フィルタの条件で、東京、日付ありを抽出します。  そうすると、subtotalで追加した列の表示されている"1"の数をカウントしてくれるので、目的達成です。

IROIRO3
質問者

お礼

ご回答有難うございます 回答の内容はためさせて頂きました。 もう一声 知恵をお貸し下さい 確かに上記のsubtotal(9,f2:f100)の範囲指定を変えて 機能はしたのですが ソート作業後に何かに書き留めて また ソートしなおして また書き留める作業が発生します リアルタイムに見られる 表にはならないでしょうか また 印刷も考えていますので 出来れば一覧表示が希望なのですが 難しいですか

関連するQ&A

  • カウントについて

    エクセルをつかってカウント処理を考えています. どなたかアドバイス頂けないでしょうか。 下記のような表があります. 例えば、セルA1~3まで100とあり、セルA4~5まで400とセルA1~3とセルA4~5の数値はおなじです。3行分だったり2行分だったりと不規則コードが下に続いていきますが,まとまった数値になります. そのA列の同じコード番号全てに対して、B列にカウント数を入力したいのです。 B列のカウント数入力箇所は、セルA1~3までだとするとセルB3に最大値のカウント数がくるようにしたいのです。 コード  カウント数      100              100               100      3        200               200      2        500               500               500               500      4       

  • エクセルでカウントした数を特定のセルに入力したい

    エクセルの関数について質問させてください。 A列  B列   C列 8/9       リンゴ 8/10      ミカン 8/11      リンゴ 8/12      ブドウ 8/13      ミカン 8/14      リンゴ 8/15      ブドウ 上記のような表で、C列でカウントしたリンゴの数を 前日の日付の行の、B列に入力したいのです。 ※今が8/10だとすると、リンゴの数「3」を  8/9の行のB列の欄に入力したい。 COUNTやCOUNTIFSで色々試してみたのですが、 どうしてもうまくいきません。 どうぞ宜しくお願いします。

  • エクセルでセル内の文字をカウントしたい

    エクセルでセル内の文字をカウントしたいです。 例えば A| B| 1|1,2| 2|1,3| 3|2,3| 4|2 | 5|3 | というエクセルでB列の1の数、2の数、3の数をカウントしたいです。 B列の中には数字と数字の間は,が入っています。 困っています!よろしくお願いします!

  • 日付条件を満たしたときの文字列カウントについて困ってます。

    初級レベルかもしれませんが、教えてください。 今、A列に数年分の日付(2009/4/10など※重複日付アリ)が入力されており、 B列に全部で複数種類(10種類程度)ある文字列がランダムに入力されています。 (1つのセルに複数種類の文字列が入力されている場合もアリ) 【イメージ】   A      B 2009/4/6  ○○○ 2009/4/7  △△△ ■■■ ××× 2009/4/7  △△△ □□□ 2009/4/7  ○○○ ××× 2009/4/8  ●●● 2009/4/9  △△△ ▲▲▲ □□□ ■■■ 2009/4/9  ▲▲▲ 2009/4/9  □□□    ・       ・   ・       ・   ・       ・ このとき、1週間毎の日付で区切り(2009/4/6~2009/4/12など)、 指定した文字列の数をカウントしたく思っております。 【結果イメージ】      A           B     C     D      E ・・・                ○○○  ●●●  △△△  ▲▲▲ ・・・ 2009/4/6~2009/4/12  10     5     12      3 ・・・ 2009/4/13~2009/4/19  0     3     5      7 ・・・ 2009/4/20~2009/4/26  4     14     3      8 ・・・ エクセル2000を使用しておりますので、それに対応したいい方法を ご存知でしたら教えていただきたいです。

  • エクセル表のカウントの仕方について

    エクセルの表でいいカウントの仕方を教えてください。 まず思い浮かべて頂きたい簡単な表の例を示しておきます。行は20行程度というのを思い浮かべてください。 A列には1~10の数字、B列にはあ~んの五十音の一文字のみが、それぞれ重複ありで記入されているような単純な表です。 そこで、A列が「5」かつB列が「あ」という両条件を満たした行の数を、どこかのセルにカウントして表示したいのですが、私の能力では経験不足でできないで困っています。 どうすればいいのか教えていただきたいのです。 よろしくお願いします。

  • Excelで条件に合った数字の数をカウントしたいのですが・・・

    エクセルで【表1】のような表がある時、各品名別に在庫数<ゼロ のセルを、 関数を使ってカウントしたいのです。 【表1】 日付 品名 販売数 在庫数 1   A   30   52 2   A   20   22 3   A   25   2 4   A   15   -23 1   B   40   48 2   B   55   8 3   B   50   -47 4   B   45   -97 1   C   35   10 2   C   20   -25 3   C   40   -45 4   C   20   -85 但しこの時条件があり、品名ごとにカウントする期間が異なります。 別表で、【表2】のように 期間が入力された表があり、 品名Aなら 1~2日目のマイナスの在庫数を、 Bなら 1~3日目のマイナスの在庫数をカウントしたいのです。 【表2】 品名  期間 A    2 B    3 C    4 最終仕上げたいのは【表3】で、「在庫がマイナスになった期間」の列に入れる 関数を教えて頂きたいのです。 【表3】 品名  在庫<ゼロ になった期間 A     0 B     1 C     3 COUNTIF関数とOffset関数などを使ってみたのですが、 【表1】の日付が品によって 3になったり10になったりと変化するため、 引数の「基準」をどうすればいいのかが分からずに頓挫してしまいました・・・。 長々と分かりにくい説明になってしまいましたが、助けて下さい。 よろしくお願いします。

  • EXCELで特定の日付のセルの個数をカウント

    こんばんは。 ある列(例えばH列に)ことなる日付が入力されているとします。 ここでA1セルにカウントしたい日付を入力して、そのH列の中(数十行あります)でA1セルに入力されたのと同じ日付のセルの数のみをカウントするにはどうしたらよいでしょう? 例えば1月1日と2日が混在していて、1日分のもののみをカウントしたい 場合です。仕事で緊急で必要なので、よろしくお願いします。  

  • エクセルで特定のセルだけのカウント

     A  B  C   D 1           × 2   ×  ×  × 3 × 4 × 5 ×    × 上記のような表で、列ごとにその列だけが×のセル数をカウントする方法 がわかりません。 例えばA列=2(3、4行目は他の列に×を含まないのでカウント) B列=0 C列=0 D列=1(1行目) となります。 実際には行数が多いため計算式でカウントしたいと思っています。 どうぞよろしくお願いいたします。

  • 縦に不規則に並ぶ表から特定文字列をカウントしたい。

    縦に不規則に並ぶ表から特定文字列をカウントしたい。 Sheet1の縦に日付ごとに並んだ表から、 Sheet2へ特定文字列のカウント結果を表に起こしたいです。 日付ごとグループごとに項目数が異なるので、 どのようにセルを選択し、カウントすればいいのかわからず、 困っております。。 質問内容を分かりやすく画像に纏めましたので、 お手数ですがどうか見て下さい!! どうかよろしくお願いいたします。><!

  • 特定行をカウントする(エクセル)

    エクセルの数式について質問させてください。 下記イメージのシートが2つあります。 [日時シート]の日付と作業が[詳細シート]の日付と項目名に一致する数をカウントし、[詳細シート]の作業数(C列)に表示させたいと考えています。 カウントは項目名をキーにすることでできるのですが、「日付が一致する行を選択する」方法が分かりません。ご教示いただきますようお願いいたします。 類似の質問を探しましたが見つけれませんでした。 もし類似の質問がある場合はURLでも教えていただければ幸いです。 お手数をおかけしますがよろしくお願いいたします。 [詳細シート]    A   B    C  +------------------------------------- 1 |日付 項目名 作業数 2 |11/1  a   3 3 |11/1  b   1 4 |11/1  c   0 5 |11/2  a   1 6 |11/2  b   2 7 |11/2  c   2 [日時シート]    A   B   C   D   E   F  +--------------------------------------------------------------- 1 |日付 作業1 作業2 作業3 作業4 作業5 2 |11/1  a   a   a   b   a 3 |11/2  c   c   a   b   b

専門家に質問してみよう