データベースから普通に日付型データを吐き出すと yyyy/mm/dd hh:mm:ss の形になります。用途に応じて月日だけ短く出したかったり、秒までしっかり出したかったりしますよね。今回はVBAで日付型データの表示形式を設定する方法についてまとめます。
やりたいこと
今回のやりたいことはかなりシンプルです。
- 列を選ぶ
- 表示形式を設定する
だけです。
Columns で列を選択する
D~G列を選択するをVBAで記述すると、
Columns(“D:G”).Select
となります。
NumberFormatLocal で表示形式を設定する
選択した列に NumberFormatLocal で表示形式を設定します。
年月をシンプルに表示したい場合は
Selection.NumberFormatLocal = “m/d;@”
フルで秒まで出したい場合は
Selection.NumberFormatLocal = “yyyy/m/d h:mm;@”
です。Range.NumberFormatLocal = “表示書式指定文字” と覚えます。
表示書式指定文字
書式を指定する文字は「半角」で指定します。
y | 西暦の年の1桁を表します | “yyyy”で西暦を4桁で表示します。 “yy”で西暦を2桁で表示します。 |
---|---|---|
g | 元号を表します | “g”で元号をアルファベット1文字で表します。(例:平成 → H) “gg”で元号を漢字1文字で表します。(例:平成 → 平) “ggg”で元号を漢字で表します。(例:平成) |
e | 和暦の年の1桁を表します | “e”で和暦の年を1桁で表示します。(10年以降は自動で2桁になります) “ee”で和暦の年を2桁で表示します。 |
m | 月の1桁を表します | “m”で月を1桁で表示します。(10月以降は自動で2桁になります) “mm”で月を2桁で表示します。 |
d | 日の1桁を表します | “d”で日を1桁で表示します。(10日以降は自動で2桁になります) “dd”で日を2桁で表示します。 |
a | 曜日を表します | “aaa”で曜日を1文字で表示します。(例:月) “aaaa”で曜日をフルで表示します。(例:月曜日) |
h | 時を表します | “h”で時を1桁で表示します。(10時以降は自動で2桁になります) “hh”で時を2桁で表示します。 |
m | 分を表します | “m”で分を1桁で表示します。(10分以降は自動で2桁になります) “mm”で分を2桁で表示します。 |
s | 秒を表します | “s”で秒を1桁で表示します。(10秒以降は自動で2桁になります) “ss”で秒を2桁で表示します。 |
まとめ
他にも表示書式指定文字はありますが、よく使うのは上記だと思います。
見易くなるように上手く使いましょう。
この記事へのコメントはありません。