検索

キーワード


目次

【Excel VBA】書式設定からセルに入力されている日付を曜日に変換する方法

  • 公開日:2020-10-11 23:09:11
  • 最終更新日:2021-03-03 14:16:19

Workteria(ワークテリア)では難易度の高いものから低いものまで、スキルや経験に合わせた案件を多数揃えています。会員登録は無料ですので、ぜひ会員登録してご希望の案件を探してみてください!

フリーランス/正社員のエンジニアとして活躍するには、ご自身のスキルや経験に合わせた仕事を選ぶことが大切です。ご希望の案件がみつからない場合はお気軽にお問い合わせください!ユーザ満足度の高いキャリアコンサルタントが在籍していますので、希望条件や悩み事などなんでもご相談ください。ご希望にピッタリの案件をご紹介させていただきます。

はじめに

初めまして、エンジニアのIMMRです。


下記のデータに記載してある日付が何曜日なのかを調べたいことがあると思います。

図1 ブック(日付が入力してあるもの)

日付から曜日を確認するためのサンプルデータ


日付から曜日の確認は以前にWeekdayNameを使って確認が出来ると説明しました。

WeekdayNameを使って日付から曜日を確認する



ここでは、セルの書式設定を変更して日付から曜日を確認する方法を説明します。



1.セルに入力されている日付から曜日を確認するには

セルに入力されている日付から曜日を確認する方法は、

いくつかありますがここでは、書式設定からセルに入力されている日付を曜日に変換して確認する方法を説明します。


日付の記載してあるセルの横に曜日を表示したい場合、日付をそのままコピーします。

※コピーしなくても出来ますが、書式変更前の日付を残すために下記方法で行います。

図2 ブック(A2をB2にコピー後)

日付を横のセルにコピー


そして、そのコピーしたセルに対して、「セルの書式設定」を行って、書式設定を変更する方法です

図3 セルの書式設定

「セルの書式設定」の画面



2.書式設定からセルに入力されている日付を曜日に変換する方法

セルに入力されている日付から書式設定を変更して曜日を確認するには、

以下の関数で行うことが出来ます。

表示するといってもいくつか表示方法があります。なのか、金曜日なのか、Fridayなのか等

これは設定値を変更して行います。

Range(””).NumberFormatLocal = 設定値


設定値は、下表の通りになります。

図4 セルの書式設定の設定値一覧

設定値と表示


3.書式設定からセルに入力されている日付を曜日に変換するサンプルコード

書式設定からセルに入力されている日付を曜日に変換する方法のサンプルコードは以下のとおりです。


図5 ブック(A2をB2~B5にコピー後)

書式設定を変更して日付から曜日を確認するマクロを実行する前の画面


方法① 曜日(日本語)の略語

セルB2の書式を変更して、2019/9/13 を  に変換します。

Range("B2").NumberFormatLocal = "aaa"


方法② 曜日(日本語)

セルB3の書式を変更して、2019/9/13 を 金曜日 に変換します。

Range("B3").NumberFormatLocal = "aaaa"


方法③ 曜日(英語)の略語

セルB4の書式を変更して、2019/9/13  Fri に変換します。

Range("B4").NumberFormatLocal = "ddd"


方法④ 曜日(英語)

セルB5の書式を変更して、2019/9/13  Friday に変換します。

Range("B5").NumberFormatLocal = "dddd"



4.書式設定からセルに入力されている日付を曜日に変換する方法の実行結果

では、実際にセルに入力されている日付から書式設定を変更して曜日を確認されるか確認していきます。


図6 ブック(A2をB2~B5にコピー後)

書式設定を変更して日付から曜日を確認するマクロを実行する前の画面


下記プログラムを実行して、

 セルB2に記載してある日付を

 セルB3に記載してある日付を金曜日

 セルB4に記載してある日付をFri

 セルB5に記載してある日付をFridayにします。


サンプルコード

Sub Test12()

    Range("B2").NumberFormatLocal = "aaa"
    Range("B3").NumberFormatLocal = "aaaa"
    Range("B4").NumberFormatLocal = "ddd"
    Range("B5").NumberFormatLocal = "dddd"

End Sub



図7 ブック(上記、コード実行後)

書式設定を変更して日付から曜日を確認するマクロの実行結果


それぞれ

 セルB2の2019/9/13 の書式が変更され、金

 セルB3の2019/9/13 の書式が変更され、金曜日

 セルB4の2019/9/13 の書式が変更され、Fri

 セルB5の2019/9/13 の書式が変更され、Fridayになりました。


日付を書式変更で曜日にして、

日付から曜日を確認することが出来ました。


値を入力したわけでなく書式の変更をしただけなので、

実際のセルに記載されているのは2019/9/13 です。

図7 ブック(入力値の確認)

実際のセル上での表記の確認



【著者】

Imamura

「挑戦心」を忘れずに、新しいことにチャレンジしています。 資格:VBAエキスパート Excel VBA(ベーシック/スタンダード) 等

編集した記事一覧

正社員/フリーランスの方でこのようなお悩みありませんか?

  • 自分に合う案件を定期的に紹介してもらいたい
  • 週2、リモートワークなど自由な働き方をしてみたい
  • 面倒な案件探し・契約周りは任せて仕事に集中したい

そのような方はぜひ、Workteriaサイトをご利用ください!

  • 定期的にご本人に合う高額案件を紹介

  • リモートワークなど自由な働き方ができる案件多数

  • 専属エージェントが契約や請求をトータルサポート

よく読まれている記事