Excel

【Excel】VBAマクロで書式設定を日付に変換する方法【Range、NumberFormat、Date関数活用】

当サイトでは記事内に広告を含みます

この記事では、ExcelのVBAマクロを使用して、書式設定を日付に変換する方法について解説していきます。

ポイントとしては、☆Range☆、☆NumberFormat☆、☆Date☆関数を使用することです。

なお、下記の解説では完全な初心者でもわかりやすいようにあえて変数名(あなた自身が名付けていい場所)を少々変わった名称にしております。

そのため、あなた自身がご活用の際には、ここを適切な(英語表記でしっくりくるものが一般的)ものに変更してご活用くださいね。それでは詳しく見ていきましょう!

VBAマクロで書式設定を日付(列ごと、西暦年月日)に変換する方法【Range、NumberFormat】

それではまず、VBAマクロで書式設定を日付(列ごと、西暦年月日)に変換する方法について解説していきます。

Alt + F11にてVBE画面を開いて、以下コードをコピペしましょう。


Sub HizukeSeigyo()
    Dim RetuHensuu As Range
    Set RetuHensuu = Columns("A:A")
    RetuHensuu.NumberFormat = "yyyy/mm/dd"
End Sub

コードのAlt+F8を押し、マクロ選択画面でHizukeSeigyo関数を実行します。

このコードでは、A列全体の書式を「西暦年月日」形式に変更しています。

VBAマクロで書式設定を日付(複数列に範囲指定で、スラッシュ入り)に変換する方法【Range】

続いては、VBAマクロで書式設定を日付(複数列に範囲指定で、スラッシュ入り)に変換する方法について解説していきます。

Alt + F11にてVBE画面を開いて、以下コードをコピペしましょう。


Sub HizukeKakuchi()
    Dim RetuHensuu2 As Range
    Set RetuHensuu2 = Range("B:D")
    RetuHensuu2.NumberFormat = "yyyy/mm/dd"
End Sub

コードのAlt+F8を押し、マクロ選択画面でHizukeKakuchi関数を実行します。

このコードでは、B列からD列までの書式を「西暦年月日」形式に変更しています。

VBAマクロで書式設定を日付(複数列、先頭列から3行飛ばしで規則的に、和暦表記)に変換する方法【Date関数】

続いては、VBAマクロで書式設定を日付(複数列、先頭列から3行飛ばしで規則的に、和暦表記)に変換する方法について解説していきます。

Alt + F11にてVBE画面を開いて、以下コードをコピペしましょう。


Sub HizukeWareki()
    Dim i As Integer
    For i = 1 To 100 Step 4
        Cells(i, 1).Value = Date
        Cells(i, 1).NumberFormat = "ggge" & "年" & "m" & "月" & "d" & "日"
    Next i
End Sub

コードのAlt+F8を押し、マクロ選択画面でHizukeWareki関数を実行します。

このコードでは、A列の1行目から3行飛ばしで和暦形式の日付を挿入しています。

ExcelのVBAマクロを活用して、さまざまな書式設定の日付変換が行えることがわかりました。繰り返しの作業や複雑な設定もVBAマクロを利用することで、効率的に行うことができます。今回学んだ知識を活用して、日常業務の効率化を図ってみてください。