• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:【エクセル】日付と氏名の個数の出し方を教えて下さい)

【エクセル】日付と氏名の個数の出し方を教えて下さい

このQ&Aのポイント
  • エクセルで日付と氏名の個数を出す方法を教えてください。
  • 具体的なデータがあり、1月と2月の氏名別の個数を求めたいです。
  • 関数や手順を教えてください。

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

  • ベストアンサー
  • msMike
  • ベストアンサー率20% (364/1804)
回答No.2

1.セル結合した範囲 D1:E1 内に 2016/1/1 を入力して、“ユーザー定義”で   yyyy"年"m"月"  に書式設定 2.セル E3 に次式を入力して、此れを下方にオートフィル    =SUMPRODUCT((A$2:A$8>=D$1)*(A$2:A$8<=EOMONTH(D$1,0))*(B$2:B$8=D3)*1)

taka06021229
質問者

お礼

keithin 様 回答いただきありがとうございます。 表でのご説明いただき解りやすい回答ありがとうございました。 msMike様のご説明で無事解決できました。 ありがとうございました。

その他の回答 (5)

  • m_and_dmp
  • ベストアンサー率54% (987/1817)
回答No.6

Countif には複数条件を設定できないので、COUNTIFS() を使ってください。 =COUNTIFS(E2:E8,">=2016/1/2",E2:E8,"<=2016/1/31",F2:F8,"*山田*") countif を使う場合は、氏名行の1月の範囲を対象範囲とします。 (2月分は氏名行の2月の範囲・・・・) データが月ごとに並んでいない場合は、countif はを使うことができません。 No.2 さんのSUMPRODUCT() も良いと思います。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.5

>関数を教えていただけますでしょうか。 Excel 2007以降のバージョンではCOUNTIFS関数が組み込まれていますので1つの関数でカウントできます。 Excel 2003以前のバージョンでCOUNTIF関数を使うときは複数の条件を同時に比較できませんので文字列比較が可能のときは元データを連結したデータを作業用列に作成しなければなりません。 例えばG列へ次のような数式を入力します。 G2=TEXT(E2,"yyyy/m/d ")&F2 → 2016/1/2 山田 G2を下へ必要数コピーして作業列とします。 =COUNTIF(G:G,"2016/1/*山田") → 3 =COUNTIF(G:G,"2016/1/*佐藤") → 1

taka06021229
質問者

お礼

bunjii 様 回答いただきありがとうございます。無事解決できました。 ありがとうございました。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 各データがどのセル範囲に入力されているのか何も説明されておりませんので、取り敢えず仮の話として、御質問文内で上に書かれている表の内、「日付」と入力されているのがE1セル、「氏名」と入力されているのがF1セルであるものとし、 御質問文内で下に書かれている表の内、「2016年1月」と入力されているのがA1セル、「山田」と入力されているのがA3セル、「個数」と入力されているのがB2セルであるものとします。  その場合、B3セルに次の関数を入力してから、B3セルをコピーして、B4以下に貼り付けて下さい。 =IF(OR($A2="",ISERROR(1/(YEAR($A$1)>1904))),"",COUNTIFS($F:$F,$A2,$E:$E,">="&TEXT($A$1,"yyyy/m"),$E:$E,"<"&EDATE(TEXT($A$1,"yyyy/m"),1))) 或いは =IF(OR($A2="",ISERROR(1/(YEAR($A$1)>1904))),"",COUNTIFS($F:$F,$A2,$E:$E,">="&TEXT($A$1,"yyyy/m"),$E:$E,"<"&EOMONTH($A$1,0)+1))

taka06021229
質問者

お礼

kagakusuki 様 回答いただきありがとうございます。無事解決できました。 ありがとうございました。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

ご利用のエクセルのバージョンが不明のご相談ですが、最近のエクセルをご利用として。 具体的なレイアウトも不明のご相談ですが、仮に A列に日付 B列に名前 として D1に2016/1/1を記入 D2,D3に山田、佐藤を記入として E2: =COUNTIFS(A:A,">="&D$1,A:A,"<"&EDATE(D$1,1),B:B,D2) といった具合に計算します。 #COUNTIF関数では「1月の山田」のような複数条件の計算は出来ません。

taka06021229
質問者

お礼

keithin 様 回答いただきありがとうございます。無事解決できました。 ありがとうございました。

  • m_and_dmp
  • ベストアンサー率54% (987/1817)
回答No.1

countif() が使えると思います。

taka06021229
質問者

補足

m_and_dmp 様 早速ありがとうございます。 =COUNTIF(F2:F5000,"山田")*COUNTIF(E2:E5000,">=2016/1/1")-COUNTIF(E2:E5000,">=2016/1/31") こちらで試してみましたが、氏名でカウントできませんでした。ご教授お願いします。

関連するQ&A