• ベストアンサー

Excelで一定期間の数を数えたい

 多分、他の方も質問されていると思いますが、見付けられなかったので、教えてください。  例えば、 2006/4/1 A 2006/4/5 B 2006/4/7 C 2006/4/15 A 2007/5/12 B 2007/5/13 A  こんな感じで表がある場合、 2006/4のAがいくつでBがいくつ、2007/5のAがいくつでBがいくつって数えるのはどうしたらよいのでしょうか?  ちなみに、期間(行)は、3年くらいで1000以上の日があります(重複有り)また、A,Bと書いたところは、品名でこれも100種類くらい(重複有り)あります。 もちろん、日付と品名は独立したセルです。 月別にA,B,Cはそれぞれいくつと集計したいのですが。

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

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

A列が日付、B列が品名のとき関数式でやるなら =SUMPRODUCT((YEAR($A$1:$A$1000)=2006)*(MONTH($A$1:$A$1000)=4)*($B$1:$B$1000="A")*1) で「2006年」の「4月」の「A」の行数がカウントできます C列に補助列を作成し =TEXT(A1,"YYYYMM") と入力しておくと 200604 という文字列が作成できますので =SUMPRODUCT(($C$1:$C$1000="200604")*($B$1:$B$1000="A")*1) のように短くできます

dogs59
質問者

お礼

ゆっくりと考えて試してみます。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (4)

noname#204879
noname#204879
回答No.5

ANo.1 で ASIMOVさんが仰っているようにピボテに依るのが簡単かと。 そこで仰っている「月日を行(R)に」がどういうことなのか私には理解できなかったのですが、私が得た結果を示しておきます。 日付フィールドを行エリアに、品名フィールドを列エリアとデータエリアに放り込んだ後、行エリアを月と年でグループ化すると次のようになりました。     A    B  C      D     E   F   G   H   I 1  日付    品名   データの個数/品名    品名 2  2006/4/1 A    年         日付 A   B   C   総計 3  2006/4/5 B    2006年       4月   2   1   1   4 4  2006/4/7 C              5月      1      1 5  2006/4/15 A    2007年       4月   1         1 6  2006/5/23 B              5月   1   2      3 7  2007/4/8 A    総計            4   4   1   9 8  2007/5/10 B 9  2007/5/12 B 10 2007/5/13 A 11

dogs59
質問者

お礼

考え方が難しいですが、何とか試してみます。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • Caryo_t
  • ベストアンサー率45% (112/246)
回答No.4

ピボットテーブルを使わず,表形式にする方法を紹介します。 まず,日付をAの列に,品名をBの列に入れているものとします。  (dogs59さんが例に出した2006/4/1 A で言えば,2006/4/1がA1に,AがB1のセルにあるとします) このデータが入っているシートの名前を,仮に「DATA」とします。 つぎに,集計用のシートを追加して,仮に「Total」とします。 TOTALのシートの構成は,以下のようにします。  ・A1に「年度」と入れ,A2のセルから縦に年を入れる。  ・B1に「月」と入れ,B2のセルから縦に月を入れる。  ・最後に,商品名をC1から横に並べる。 イメージとしては,こんな感じになります(セルの区切りは「,」で表しています。 年度,月,商品A,商品B,商品C,… 2006,12,【数式】 2007,1 2007,2 2007,3 ここまで来れば,あと一息。 TOTALのシートのC2のセル(上の例にある【数式】のところ)に,以下の式を貼り付けて, ShiftとCtrlを押しながら,Enterを押します。 =SUM(IF(YEAR(DATA!$A$1:$A$2000)=$A2,IF(MONTH(DATA!$A$1:$A$2000)=$B2,IF(DATA!$B$1:$B$2000=C$1,1,0),0),0)) あとは,これをオートフィルで引っ張るだけです。 数式の意味は蛇足になってしまいそうなので,お知りたい場合には,またお知らせ下さい。

dogs59
質問者

お礼

ありがとうございました。 ゆっくりと考えて試してみます。

全文を見る
すると、全ての回答が全文表示されます。
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.3

=SUMPRODUCT((TEXT(A1:A1000,"yymm")="0604")*(B1:B1000="A")) これで2006/04のAが、 =SUMPRODUCT((TEXT(A1:A1000,"yymm")="0705")*(B1:B1000="B")) これで2007/05のBがカウントできます。

dogs59
質問者

お礼

ありがとうございます。 ゆっくりと式の意味を展開して考えてみます。

全文を見る
すると、全ての回答が全文表示されます。
  • ASIMOV
  • ベストアンサー率41% (982/2351)
回答No.1

ピボットテーブルでどうでしょうか データーの上の行のセルに「日付」「品名」と項目を入れた後、項目を含めデーター全体を選択した後、データ、ピボットテーブルとし レイアウトで、月日を行(R)に、品名を列(C)とデータ(D)の両方にドラグ&ドロップします

dogs59
質問者

お礼

ピボットテーブルという手がありましたね。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 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で文字列をまとめたい

    こんにちは いつもお世話になります。 このカテへの投稿は初めてですが、今頼まれて簡単な集計表を作ろうとしています。 あるシートを入力専用のシートにし、たとえばA列に日付、B列には品名、C列には数量を入れるとします。 これを1ヶ月続けたあと、品名でまとめた集計表を作ります。 100行くらいのデータのうち、種類としては10数種類であり、その数は毎月変動します。(行数も) 集計表に重複せずに整理するため、今まではB列だけを別にコピーし、手動でソートして重複しているデータを削除していました。 これをなんとかもっと簡単に行う方法はないものでしょうか? 残りの数字の部分はSUMIF関数を使って合計させていますので簡単なのですが、前処理にいい方法が思いつきません。 ぼちぼち頭の柔軟性に疑問符がつき始めた小生になにかいいヒントをいただけましたら幸いです。 よろしくお願いいたします。

  • エクセルで集計

    エクセルで集計 シート1:A列に日付2000行程度、B列に品名A,B,C,D…500種類程度、C列にその内容。日毎に行は増えていきま、同じ品名が何度も登場してきます。 シート2:ここに新しくシート1の集計をして、同じ品名の多い順に並べ替えてリストを作成したいと思います。 シート1に新しく行が増えると同時にシート2の集計に反映させたいのですが、いい方法はありますか?

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

    Windows Xp エクセル2003を使用しています。 業務で使用している集計表ファイルがあり、別ファイルにデータを反映させたいのです。 集計表のセルA1を検索値としセルB1とセルB2の値を返す関数はないでしょうか? 集計表のつくりは約1000行あり、セルA3を検索値としてセルB3の値を返す行もあります。 セルA5を検索値とし、B5、B6、B7、C5,C6の値を返す行など様々です。 こういったデータがランダムで表になっています。一つの検索値に対して、検索値の水平方向はvlookup関数で表示出来たのですが、 一つの検索値で2つの値を返す関数が分からず、困っています。 1行下や2行下を検索する関数も参考にしたのですが、集計表のつくりがランダムの為、検索してほしくないものまで表示されてしまうなど、ウマクできませんでした。 宜しくお願いします。

  • エクセルについての質問です(2):訂正。

    前回の質問内容が間違ってしまいましたので再度質問させていただきます。 エクセルで下記のような当日の販売集計表ファイルがあった時に、まったく別の全集計ファイルの当日日付の列に自動的に合計が記入されるようにファイルをつくりたいのですが、マクロもしくはその他の方法でありますでしょうか。 (10月2日の場合)   A   B    C 1品名  合計  日付 ←タイトル 2鉛筆  7   1002 3定規  1   1002 4メモ帳 5   1002 ・このような当日の集計の数字を全集計の方に記入する↓   A   B   C   D     E 1品番 品名  在庫  販売数  1001  1002 ・・・ ←タイトル・日付 2   鉛筆  10   9   2  7 3   定規   5   4   3  1 4   メモ帳 10   7   2  5 ・ ・ 説明: ・日付を1002などであらわしています。 ・1行目はタイトル行です ・集計のA列は空欄にしています(実際には品番が入っています) ・当日のものをその日付の列に合わせて入れます。 ・品名は実際にはたくさんあります(同じ品名はありません)。 ・集計側に無い品名のものは通常ありませんが、何らかの手違いで発生した場合は分かりやすく処理が止まるようにしたいです。 ご存知の方何卒ご教授下さい。宜しくお願いいたします。

  • エクセルで時間まで含んでいる日付のセルの重複を除いた個数を出したい

    エクセルで時間まで含んでいる日付のセルの重複を除いた個数を出したいのですが B列の行に日付が8/3と言う表示形式でずっと並んでいます。しかしこのセルは日付だけでなく訳あって実際には時間も含んでいます。 標準表示でみると「40028.1234」みたいな感じになっているわけです・・・ それで、B列の行にある日付は重複している日付もあります。それを重複を除いて数えたいのですが・・・ 色々な関数で試したのですがLEN(B3:B100,5)などを入れると使えなくなってしまう関数だったりして結局できませんでした・・・ 表は下記のようになっています。     A   B   C   D ・・・ 3   8/3 4   8/3 5   8/4 6   8/6 7   8/6 8   8/6 9   8/8 ・ ・ ・ 上記の結果を重複を除いて「4」と出したいのですが・・・ 3より上の行には日付とは関係ないものが入力されており 9より下の行にはこれから日々増えていく行があり現時点では未入力です 何行まで増えるかわからないのでB3:B100みたいな感じで指定しておきたいのですが・・・ よろしくお願いします。

  • エクセルについての質問です(2)。

    エクセルで下記のような当日の販売集計表ファイルがあった時に、まったく別の全集計ファイルの当日日付の列に自動的に合計が記入されるようにマクロをつくりたいのです。 (10月2日の場合)   A   B   C 1品名  合計  日付 ←タイトル 2鉛筆  7   1002 3定規  1   1002 4メモ帳 5   1002 ・このような当日の集計の数字を全集計の方に記入する↓   A  B    C   D    E 1品番 品名 在庫  販売数  1001  1002 ・・・ ←タイトル・日付 2   たこ 10    9   2  7 3   いか  5    4   3  1 4   なす 10    7   2  5 5   大根  5    2   2  0 ・ ・ 説明: ・当日のものをその日付の列に合わせて入れます。 ・品名は実際にはたくさんあります(同じ品名はありません)。 ご存知の方何卒ご教授下さい。宜しくお願いいたします。

  • エクセル 集計表

    経費の日毎・月別の集計表から月別の一覧表の作成方法を教えてください。 現在の表は B1からO1まで14列に経費科目を入れています。 A2からA32までの31行に日付を付し、A33行目を科目別合計としています。この表を13枚作成して串差しで全体の合計表を作成しました。 14枚目に各月の各経費合計額のみの一覧表を作成する方法を教えてください。 よろしくお願い致します      

  • 種類別・期間別の集計

    下のような表での種類別・期間別の集計をしたいのですが?    A   B    C 1  8/1 10.000 りんご 2  8/2 50.000 みかん 3  8/4 12.000 りんご 4     10.000 ぶどう    ・ 10  8/15 5.000 みかん 11  8/16 25.000 ぶどう    ・ 26  8/30 13.000 りんご 35  8/31 8.000 みかん 毎月1日から15日と16日から月末までの各”りんご””みかん”2ぶどう”の個別の集計をしたいのですが日付が入る関数が分かりません。 月は毎月替わりますが、1日から15日と16日から月末は変わりません。 日付のセルには空白のセルが入る事があります。 よろしくお願いします。

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

    エクセルの関数について教えて頂きたいです。 業務でエクセル(2000)で作成してある集計表があります。 その集計表の数値を別BOOKに反映させたいのです。 セルA1を検索値として、セルB1とセルB2の値を返す関数はありますでしょうか? 集計表の行数は約500行、並びはランダムでセルC1を検索値としてセルC2の値を返す 箇所もあります。一つの値を検索値として二つの値を返すことが出来ずに困っています・・・ 宜しくお願いします。

彼氏が気持ち悪く感じます
このQ&Aのポイント
  • 彼氏が気持ち悪く感じる理由と対処法
  • 彼氏が過剰なアプローチをしてくる問題
  • 彼氏に対しての気持ちを伝える方法
回答を見る

専門家に質問してみよう