Excelで日付データを扱っていると、年月だけを表示したい場面に遭遇することがよくあります。
売上データの月次集計や、請求書の発行年月の表示など、日付から日の部分を除いて年月のみを表示したいケースは実務で頻繁に発生するでしょう。しかし、単純に日を削除しようとすると、エラーが出たり元のデータが壊れたりして困った経験はありませんか。
Excelには、日付から年月だけを取り出して表示する方法が複数用意されています。セルの書式設定を変更する方法、TEXT関数を使う方法、YEAR関数とMONTH関数を組み合わせる方法など、目的に応じて使い分けることが可能です。
本記事では、年月だけを表示する各種方法を、初心者の方でも理解できるよう実例付きで詳しく解説します。yyyy/mm形式や2024年1月形式など、様々な表示パターンにも対応できるテクニックをお伝えしますので、ぜひ最後までご覧ください。
ポイントは
・セル書式設定で見た目だけ変更
・TEXT関数で文字列として年月抽出
・用途に応じた表示形式の使い分け
です。
それでは詳しく見ていきましょう。
セルの書式設定で年月だけ表示する方法
それではまずセルの書式設定を使って年月だけを表示する方法について解説していきます。
ユーザー定義書式の基本設定
最もシンプルで便利な方法が、セルの書式設定を変更して年月のみを表示する方法です。
この方法の大きなメリットは、元の日付データを保持したまま見た目だけを変更できる点にあります。
1. 年月だけ表示したいセルを選択
2. 右クリックして「セルの書式設定」を選択(またはCtrl+1)
3. 「表示形式」タブの「ユーザー定義」を選択
4. 種類の欄に「yyyy/mm」と入力
5. OKをクリック
この設定により、2024/11/15という日付が2024/11と表示されるようになります。
| 元の日付データ | 書式設定 | 表示結果 |
|---|---|---|
| 2024/11/15 | yyyy/mm | 2024/11 |
| 2024/11/15 | yyyy年mm月 | 2024年11月 |
| 2024/11/15 | yyyy-mm | 2024-11 |
重要なのは、セルに保存されている実際のデータは変わっていないという点です。あくまで表示方法を変更しただけなので、計算や集計に影響を与えません。
様々な年月表示形式のパターン
ユーザー定義書式では、様々な形式で年月を表示できます。
業務の要件や見やすさに応じて、最適な形式を選択しましょう。
・yyyy/mm → 2024/11(スラッシュ区切り)
・yyyy-mm → 2024-11(ハイフン区切り)
・yyyy.mm → 2024.11(ドット区切り)
・yyyy年mm月 → 2024年11月(日本語表記)
・yyyymm → 202411(区切りなし)
・yy/mm → 24/11(西暦2桁)
・ggg ee年mm月 → 令和6年11月(和暦)
| 書式コード | 表示例 | 用途 |
|---|---|---|
| yyyy/mm | 2024/11 | 一般的な表示 |
| yyyy年mm月 | 2024年11月 | 請求書・報告書 |
| yyyymm | 202411 | データベース連携 |
| ggg ee年mm月 | 令和6年11月 | 公文書 |
これらの書式を覚えておけば、どんな要件にも対応できるでしょう。
書式設定が適さないケース
セルの書式設定は便利ですが、文字列として年月を扱いたい場合には適していません。
例えば、年月データを他のシステムに出力する場合や、文字列として結合する場合は、TEXT関数を使う必要があります。
・他のセルと文字列結合できない
・CSVやテキスト出力時に日付形式に戻る
・外部システムへのデータ連携で問題が発生する可能性
このような場合は、次のセクションで紹介するTEXT関数を使うと良いでしょう。
ただし、書式設定はあくまで「見せ方」の変更であり、データそのものは日付型のまま残ります。データの型を文字列に変換したい場合は、TEXT関数やその他の関数を使用する必要があります。
TEXT関数で年月を抽出する方法
続いてはTEXT関数を使って年月を抽出する方法を確認していきます。
TEXT関数の基本構文と使い方
TEXT関数は、日付データを指定した書式の文字列に変換する関数です。
書式設定との違いは、結果が文字列として扱われる点にあります。
=TEXT(値, 表示形式コード)
例:
=TEXT(A2, “yyyy/mm”)
※A2:日付データが入っているセル
※”yyyy/mm”:表示したい形式(ダブルクォーテーションで囲む)
| 日付データ | TEXT関数の数式 | 結果 |
|---|---|---|
| 2024/11/15 | =TEXT(A2, “yyyy/mm”) | 2024/11 |
| 2024/11/15 | =TEXT(A2, “yyyy年mm月”) | 2024年11月 |
| 2024/11/15 | =TEXT(A2, “yyyymm”) | 202411 |
TEXT関数で変換された結果は文字列なので、他の文字列と結合することも可能です。
TEXT関数を使った様々な表示パターン
TEXT関数では、セルの書式設定と同じように様々な表示形式を指定できます。
さらに、他の文字列と組み合わせることで、より柔軟な表現が可能になります。
・=TEXT(A2, “yyyy年mm月分”) → 2024年11月分
・=TEXT(A2, “yyyy/mm”)&”請求書” → 2024/11請求書
・”売上_”&TEXT(A2, “yyyymm”) → 売上_202411
・TEXT(A2, “yyyy”)&”年度” → 2024年度
| 目的 | TEXT関数の数式例 | 結果例 |
|---|---|---|
| 請求書タイトル | =TEXT(A2, “yyyy年mm月”)&”分請求書” | 2024年11月分請求書 |
| ファイル名生成 | =”売上_”&TEXT(A2, “yyyymm”)&”.csv” | 売上_202411.csv |
| レポート見出し | =TEXT(A2, “yyyy/mm”)&” 月次報告” | 2024/11 月次報告 |
このように、TEXT関数は文字列として扱えるため、動的なタイトルやファイル名の生成に非常に便利です。
TEXT関数とセルの書式設定の使い分け
TEXT関数とセルの書式設定は、それぞれ異なる特徴を持っています。
用途に応じて適切な方法を選択することが重要でしょう。
・元の日付データで計算や集計を行う
・ピボットテーブルで月別に集計する
・日付として扱いたいが表示だけ変更したい
TEXT関数が適している場合:
・文字列として年月を扱いたい
・他の文字列と結合する
・CSVやテキストファイルに出力する
・VLOOKUPの検索値として使用する
| 項目 | セルの書式設定 | TEXT関数 |
|---|---|---|
| データ型 | 日付型のまま | 文字列に変換 |
| 計算可能 | ○ | × |
| 文字列結合 | × | ○ |
| ピボット集計 | ○ | △ |
一般的には、集計や分析にはセルの書式設定、出力や表示にはTEXT関数を使うと覚えておくと良いでしょう。
そのため、元の日付データは別の列に残しておき、TEXT関数で変換した年月データは表示や出力専用として使うことをおすすめします。データの二重管理になりますが、柔軟性と正確性を両立できます。
YEAR関数とMONTH関数を組み合わせる方法
続いてはYEAR関数とMONTH関数を組み合わせて年月を抽出する方法を確認していきます。
YEAR関数とMONTH関数の基本
YEAR関数とMONTH関数は、日付データから年と月を数値として取り出す関数です。
これらを組み合わせることで、年月を様々な形式で表現できます。
YEAR関数:=YEAR(A2) → 2024
MONTH関数:=MONTH(A2) → 11
組み合わせ:=YEAR(A2)&”/”&MONTH(A2) → 2024/11
| 日付データ | YEAR関数 | MONTH関数 | 組み合わせ |
|---|---|---|---|
| 2024/11/15 | =YEAR(A2) | =MONTH(A2) | =YEAR(A2)&”/”&MONTH(A2) |
| 2024/03/05 | 2024 | 3 | 2024/3 |
| 2024/12/25 | 2024 | 12 | 2024/12 |
ただし、この方法には注意点があります。MONTH関数は1月を「1」、3月を「3」のように1桁で返すため、表示が不揃いになる可能性があるのです。
TEXT関数で桁揃えをする方法
月が1桁の場合に2桁表示にするには、TEXT関数と組み合わせる方法が効果的です。
これにより、常に「01」「02」のように2桁で表示できます。
=YEAR(A2)&”/”&TEXT(MONTH(A2), “00”)
または
=TEXT(YEAR(A2), “0000”)&”/”&TEXT(MONTH(A2), “00”)
結果:2024/03(3月も2桁で表示)
| 日付データ | 単純な組み合わせ | TEXT関数で桁揃え |
|---|---|---|
| 2024/03/15 | 2024/3 | =YEAR(A2)&”/”&TEXT(MONTH(A2), “00”) |
| 2024/11/15 | 2024/11 | 2024/11 |
この方法なら、すべての月が統一された形式で表示されるでしょう。
DATE関数で年月の日付データを作成
YEAR関数とMONTH関数で取り出した値を使って、月初めの日付データを作成することもできます。
これは、ピボットテーブルでの集計や、日付として計算したい場合に便利です。
=DATE(YEAR(A2), MONTH(A2), 1)
例:
元のデータ:2024/11/15
結果:2024/11/1
※第3引数を「1」にすることで、その月の1日を作成
| 元の日付 | 月初日付 | 数式 |
|---|---|---|
| 2024/11/15 | 2024/11/1 | =DATE(YEAR(A2), MONTH(A2), 1) |
| 2024/03/25 | 2024/03/1 | |
| 2024/12/10 | 2024/12/1 |
この方法で作成した日付データに、前述のセルの書式設定(yyyy/mm)を適用すれば、日付型を保ちながら年月だけを表示できるでしょう。
ただし、単純に年月を表示したいだけなら、TEXT関数やセルの書式設定の方がシンプルです。用途に応じて使い分けることで、効率的なデータ処理が可能になります。特にピボットテーブルで集計する場合は、DATE関数で月初日付を作成する方法が有効です。
実務で役立つ年月表示の応用テクニック
続いては実務で役立つ年月表示の応用テクニックを確認していきます。
ピボットテーブルでの月別集計設定
ピボットテーブルで月別に集計する際、自動的に年月でグループ化する機能が便利です。
日付データがあれば、わざわざ年月を別の列に作成しなくても月別集計ができます。
1. 日付列を含むデータ範囲を選択
2. 「挿入」タブ→「ピボットテーブル」
3. 日付フィールドを「行」エリアにドラッグ
4. 日付フィールドを右クリック→「グループ化」
5. 「月」と「年」を選択してOK
→ 自動的に年月単位でグループ化される
| グループ化オプション | 表示結果 | 用途 |
|---|---|---|
| 年のみ | 2024 | 年次集計 |
| 年と月 | 2024年11月 | 月次集計 |
| 年と四半期 | 2024年第4四半期 | 四半期集計 |
この機能を使えば、元のデータに手を加えずに月別集計ができるため、非常に効率的です。
条件付き書式で年月を強調表示
特定の年月を強調表示したい場合、条件付き書式と組み合わせると効果的です。
例えば、今月のデータだけを色分けしたり、特定の期間を強調したりできます。
1. 日付列を選択
2. 「ホーム」タブ→「条件付き書式」→「新しいルール」
3. 「数式を使用して、書式設定するセルを決定」を選択
4. 数式に以下を入力:
=AND(YEAR($A2)=YEAR(TODAY()), MONTH($A2)=MONTH(TODAY()))
5. 書式を設定(背景色を黄色など)
→ 今月のデータだけが強調表示される
この設定により、データが更新されても自動的に今月のデータが強調されるため、常に最新の情報を視覚的に把握できるでしょう。
VLOOKUP関数で年月データを検索
年月データを検索キーとしてVLOOKUP関数を使う場合、データ型を統一することが重要です。
TEXT関数で作成した年月データ(文字列)と、セルの書式設定で表示した年月(日付型)は、見た目は同じでもデータ型が異なるため、検索に失敗することがあります。
検索値と検索範囲のデータ型を統一する
方法1:両方ともTEXT関数で文字列化
=VLOOKUP(TEXT(A2, “yyyy/mm”), 検索範囲, 列番号, FALSE)
方法2:両方ともDATE関数で月初日付化
=VLOOKUP(DATE(YEAR(A2), MONTH(A2), 1), 検索範囲, 列番号, FALSE)
| データ型の組み合わせ | VLOOKUP成功 | 推奨度 |
|---|---|---|
| 文字列 vs 文字列 | ○ | 高(出力用) |
| 日付型 vs 日付型 | ○ | 高(集計用) |
| 文字列 vs 日付型 | × | 使用不可 |
データ型を統一することで、確実な検索と集計が可能になるでしょう。
例えば、元の日付データ列、表示用の年月列(TEXT関数)、集計用の月初日付列(DATE関数)を用意することで、あらゆる用途に対応できます。一見冗長に見えますが、このようなデータ設計が、後々のトラブルを防ぎ、柔軟な分析を可能にします。
まとめ エクセルで年月だけ表示する方法(日付から年月抽出のやり方)
エクセルで年月だけを表示する方法をまとめると
・セルの書式設定:ユーザー定義で「yyyy/mm」など指定し、日付型を保ちながら表示変更
・TEXT関数:=TEXT(A2, “yyyy/mm”)で文字列として年月を抽出し、他の文字列と結合可能
・YEAR関数とMONTH関数:個別に年月を取り出し、DATE関数で月初日付を作成
・用途別の使い分け:集計はセルの書式設定、出力はTEXT関数、複雑な処理はYEAR/MONTH関数
これらの方法を状況に応じて活用していけば、効率的な年月データの管理が実現できます。
特にセルの書式設定とTEXT関数の違いを理解することが重要ですので、まずこの2つをマスターすることをおすすめします。
実務では、元の日付データを保持しながら、表示や出力の形式を変えるという考え方が基本です。
データの型と表示形式を意識することで、集計ミスや検索エラーを防ぎ、正確なデータ分析が可能になるでしょう。
エクセルの日付機能を正しく活用して、効率的なデータ管理を実践していきましょう!