動作検証バージョン:Windows 11 Home + 64bit Excel バージョン 2412(ビルド18324.20012クイック実行)ベータチャネル
「エクセル マクロ 日付 スラッシュ 除く」
といった検索キーワードでアクセスがありました。
Excel VBAで、「2024/12/10」といった日付データから「/」(スラッシュ)を除いて、「20241210」のようなyyyymmdd形式の文字列にするにはどのようなコードを書けばいいのかを調べていらしたのでしょう。
[スポンサードリンク]
日付をスラッシュなしにサンプルマクロ
A1セルから下方向に日付データが入力されているときに、以下のExcelマクロを実行すると、B列にスラッシュの無いyyyymmdd形式の文字列データが入力されます。
Sub 日付データをスラッシュなしの8桁文字列にする()
Dim i As Long
For i = 1 To Cells(1, "A").End(xlDown).Row
Cells(i, "B").Value _
= Format(Cells(i, "A").Value, "yyyymmdd")
Next
End Sub
Dim i As Long
For i = 1 To Cells(1, "A").End(xlDown).Row
Cells(i, "B").Value _
= Format(Cells(i, "A").Value, "yyyymmdd")
Next
End Sub
サンプルマクロで行っている処理
全体の構造としては、A列にデータが隙間なく並んでいるときの、Range.Endプロパティを使った定番のFor~Nextループです。
Dim i As Long For i = 1 To Cells(1, "A").End(xlDown).Row Next
このFor~Nextループの中で、VBAのFormat関数を使って、A列の日付データからスラッシュを除いたyyyymmdd形式の文字列にして、B列に入力しています。
Cells(i, "B").Value _ = Format(Cells(i, "A").Value, "yyyymmdd")
[スポンサードリンク]
Home » エクセルマクロ・Excel VBAの使い方 » マクロのサンプル » 日付をスラッシュなしにするExcelマクロ