Excelで土日・祝日の部分一致抽出方法
日々の業務で、特定の日付が土日や祝日に該当するかどうかを確認したいことはありませんか?手作業では時間がかかる上にミスも起こりやすいです。この記事では、Excelを使って効率的に土日・祝日の部分一致抽出を行う方法を詳しく解説します。数式とマウス操作の両方の手法を紹介し、それぞれの長所や短所についても詳しく説明します。
📊 やり方の比較
| 手法 | メリット | デメリット | 推奨 |
|---|---|---|---|
| 数式(WEEKDAY関数) | 自動更新される, 高度なロジックが可能 | 複雑な設定が必要, 古いExcelでは一部機能が使えない可能性あり | ◎ |
| マウス操作(フィルタ機能) | 直感的で簡単, データの視覚化が容易 | 手動での設定が必要, 元データが消える心配なし | 〇 |
fx 使用する数式
Excel / SpreadSheet
=IF(OR(WEEKDAY(A2)=7,WEEKDAY(A2)=1,VLOOKUP(TEXT(A2,"yyyy-mm-dd"),祝日テーブル!A:A,1,FALSE))="", "平日", "土日・祝日")💡 仕組みの解説
この数式は、指定されたセルの日付が週末(土曜日または日曜日)であるか、祝日のリストに含まれているかどうかを判断します。具体的には以下の手順で動作します。
- WEEKDAY関数を使用して、指定した日付が週末であるか確認します。(WEEKDAY(A2)=7は日曜日、WEEKDAY(A2)=1は土曜日)
- VLOOKUP関数を使って祝日のリストから該当する日付を検索します。
- 上記のいずれかが真の場合、「土日・祝日」と表示し、偽であれば「平日」を表示します。この方法では元データは削除されず、別のセルに結果が出力されます。
具体的な手順
1
WEEKDAY関数とVLOOKUP関数を使用した数式を入力します。
2
祝日のリストを作成し、そのリストを使ってVLOOKUP関数で祝日を検索します。
3
結果が「土日・祝日」または「平日」と表示されることを確認します。
よくある質問
Q Q1. VBAを使用した方が効率的ですか?
A.
A1. VBAは大量のデータ処理や複雑なロジックを実装する際に有用ですが、この場合の部分一致抽出であれば数式の方が簡単で効果的です。
Q Q2. スピルエラーとは何ですか?
A.
A2. スピルエラーは、セルに表示できないほど長い文字列や数値が入力された場合に出ます。この記事の例では発生しない可能性が高いです。
Q Q3. スマホ版Excelでも使える方法がありますか?
A.
A3. 数式を使用する方法はスマホ版Excelでも利用可能ですが、フィルタ機能による手動設定も可能です。