Excelで年月だけを抽出するには?日付からスマートに年月を取り出す方法

Excel

「日付から年月だけを取り出して集計したい」

「請求書や売上データを月単位でまとめたい」

Excelを使っていると、こうした年月だけを抽出したい場面がよくありますよね。

でも実際やろうとすると、次のような問題に遭遇しませんか?

  • 日付が「2025/07/13」みたいに入っていてどうすればいいかわからない
  • TEXT関数や書式設定で失敗した
  • ピボットテーブルで思うようにグループ化できない

この記事では、Excelで日付から「年月」だけをきれいに取り出す方法をわかりやすく紹介します。

初心者でもすぐ使えるように、式と使い分けのポイントまで解説するので、ぜひ最後まで読んでください。

スポンサーリンク

年月抽出が必要な場面

ビジネスでの活用例

  • 売上データの月次集計
  • 請求書の発行月管理
  • 顧客データの登録月分析
  • 在庫データの入荷月集計

年月抽出のメリット

  • データの可読性向上
  • 月単位での分析が簡単
  • レポート作成の効率化
  • トレンド分析の精度向上

TEXT関数で年月を抽出する方法

Excelで最も簡単に年月だけを取り出す方法はTEXT関数を使うやり方です。

TEXT関数の書き方

=TEXT(対象の日付セル,"yyyy/mm")

これだけで、対象の日付から「年/月」だけを取り出せます。

実例

基本的な使い方

A1に「2025/07/13」が入っているとき:

=TEXT(A1,"yyyy/mm")

とすると → 「2025/07」 と表示されます。

表示形式のバリエーション

書式コード表示例用途
“yyyy/mm”2025/07基本形
“yyyy-mm”2025-07ハイフン区切り
“yyyy年mm月”2025年07月日本語形式
“yy/mm”25/07西暦2桁
“mmmm yyyy”July 2025英語形式

TEXT関数のポイント

スラッシュ以外の区切り文字

スラッシュ/の代わりにハイフン-にしたいなら:

=TEXT(A1,"yyyy-mm")

と書けばOKです。

和暦での表示

=TEXT(A1,"ggge年mm月")

これで「令和7年07月」のような和暦表示も可能です。

TEXT関数の注意点

文字列として扱われる

TEXT関数の結果は文字列なので:

  • 数値計算には使えない
  • 並べ替えで注意が必要
  • ピボットテーブルでのグループ化が制限される

書式設定だけで年月に見せる方法

実は、関数を使わなくても見た目だけ年月にする方法もあります。

やり方

  1. 対象のセルを選択
  2. 右クリック →「セルの書式設定」→「表示形式」タブ
  3. 「ユーザー定義」に次のコードを入力
yyyy/mm

これでセルの見た目が「年月」になります。

書式設定の応用例

よく使われる書式パターン

書式コード表示例特徴
yyyy/mm2025/07シンプル
yyyy”年”m”月”2025年7月月のゼロ埋めなし
yyyy”年”mm”月”2025年07月月のゼロ埋めあり
yy/m25/7最短表示

注意事項

この方法は「見た目だけ」が年月になるので、中身は依然として日付(2025/07/13)のままです。

そのため、次のような場面では注意が必要です:

  • ピボットテーブルでの集計
  • COUNTIFなどの条件指定
  • 他のセルとの比較

次に紹介する関数を使う方法がおすすめです。

書式設定が適している場面

  • 見た目の統一だけが目的
  • 元の日付データを保持したい
  • シンプルな表示変更

数値として年月を取り出す方法

ピボットテーブルや集計に使いたいなら、年月をデータとして抽出する方法が便利です。

DATE関数とYEAR、MONTH関数を使う

=DATE(YEAR(A1),MONTH(A1),1)

これで、その日付の「年月初日」(例えば2025/07/01)を取り出せます。

この方法のメリット

データとしての信頼性

  • ピボットテーブルで「月単位」にグループ化できる
  • 並べ替えや計算に強い
  • 日付シリアル値として正しく扱われる

集計での活用

この方法なら、以下のような高度な集計が可能です:

=SUMIF(B:B,DATE(2025,7,1),C:C)  // 2025年7月の売上合計

文字列と数値の使い分け

TEXT関数(文字列)の特徴

  • 見た目の自由度が高い
  • 計算には向かない
  • レポート表示に最適

DATE関数(数値)の特徴

  • 計算や集計に最適
  • ピボットテーブルに強い
  • データベース的な処理向け

年月抽出の実践的な活用例

売上データの月次集計

元データの例

日付商品売上
2025/07/13A商品10000
2025/07/25B商品15000
2025/08/05A商品12000

年月抽出列の追加

D列に年月を抽出:

=TEXT(A2,"yyyy/mm")

ピボットテーブルでの集計

  1. 全データを選択
  2. 「挿入」→「ピボットテーブル」
  3. 行:年月、値:売上の合計

請求書の発行月管理

請求月の自動計算

=TEXT(A2,"yyyy年mm月")  // 見やすい表示用
=DATE(YEAR(A2),MONTH(A2),1)  // 集計用

月別請求件数の集計

=COUNTIF(D:D,DATE(2025,7,1))  // 2025年7月の請求件数

顧客登録月の分析

登録月別の顧客数推移

  1. 登録日から年月を抽出
  2. 月別の新規登録数を集計
  3. 折れ線グラフで推移を表示

高度な年月抽出テクニック

条件付きの年月抽出

営業日ベースの月末日

=EOMONTH(A1,0)  // その月の末日
=WORKDAY(EOMONTH(A1,0),0)  // その月の営業日末日

四半期の抽出

="Q" & ROUNDUP(MONTH(A1)/3,0) & " " & YEAR(A1)

結果例:「Q3 2025」

年月範囲での条件抽出

特定期間のデータ抽出

=IF(AND(A1>=DATE(2025,7,1),A1<DATE(2025,8,1)),"対象","対象外")

複数月の条件

=IF(OR(TEXT(A1,"yyyy/mm")="2025/07",TEXT(A1,"yyyy/mm")="2025/08"),"対象","対象外")

トラブルシューティング

よくある問題と解決法

TEXT関数が#VALUE!エラーになる

原因: 参照セルが日付形式でない

解決法:

=IF(ISNUMBER(A1),TEXT(A1,"yyyy/mm"),"")

並べ替えが正しくできない

原因: TEXT関数の結果が文字列のため

解決法: DATE関数を使うか、補助列を作成

ピボットテーブルで月が正しくグループ化されない

原因: 日付データに時刻が含まれている

解決法:

=DATE(YEAR(A1),MONTH(A1),1)

で年月初日に統一

応用:年月を使った分析

前年同月比の計算

=SUMIF(年月列,TEXT(TODAY()-365,"yyyy/mm"),売上列)

移動平均の計算

3か月移動平均:

=(今月売上+前月売上+前々月売上)/3

季節性分析

月別の売上傾向を把握:

=AVERAGE(IF(MONTH(日付列)=7,売上列))  // 7月平均

まとめ

Excelで年月を抽出する方法は大きく3つあります:

使い分けのガイド

見た目だけ変えるなら

セルの書式設定 → ユーザー定義「yyyy/mm」

  • 元データを保持
  • シンプルな表示変更
  • 一時的な見た目調整

文字列として取り出すなら

=TEXT(A1,"yyyy/mm")
  • 表示の自由度が高い
  • レポート作成に最適
  • 見た目重視の場合

データとして使うなら

=DATE(YEAR(A1),MONTH(A1),1)
  • 集計・分析に最適
  • ピボットテーブルに強い
  • 計算処理向け

推奨する使い方

  1. 分析用途: DATE関数で年月初日を作成
  2. 表示用途: TEXT関数で見やすい形式
  3. 一時的: セルの書式設定

コメント

タイトルとURLをコピーしました