選択範囲の8桁の文字列を日付に変換するマクロ
年月日を8桁の文字列、例えば「20130518」と表わすケースがあります。これをExcelで使用するためにはシリアル値に変換する必要があります。
結構、面倒ですので、これをマクロで行うことを考えます。
次は、選択範囲の8桁の文字列を日付(シリアル値)に変換するマクロです。
Sub EightToDate()
Dim c As Object
For Each c In Selection
c.Value = DateSerial(Left(c.Value, 4), Mid(c.Value, 5, 2), Right(c.Value, 2))
c.NumberFormatLocal = "yyyy/m/d"
Next c
End Sub
Dim c As Object
For Each c In Selection
c.Value = DateSerial(Left(c.Value, 4), Mid(c.Value, 5, 2), Right(c.Value, 2))
c.NumberFormatLocal = "yyyy/m/d"
Next c
End Sub
逆に選択範囲の日付(シリアル値)を8桁の文字列に変換するマクロは次の通りです。
Sub DateToEight()
Dim c As Object
For Each c In Selection
c.Value = Format(c.Value, "yyyymmdd")
c.NumberFormatLocal = "0"
Next c
End Sub
Dim c As Object
For Each c In Selection
c.Value = Format(c.Value, "yyyymmdd")
c.NumberFormatLocal = "0"
Next c
End Sub
[ 2013年5月18日 | カテゴリー: Excel | タグ: VBA , 日付 ]
« グラフ化して表示する「プロ野球チャート」 | デイリースポーツ、ブレない一面記事 »
コメントを残す