- ベストアンサー
Access 日付の切捨て
"20060321"などの日付をあらわす文字列を、 "20060301"など、日を全てその月の1日に置換したいのですが、どうすればいいでしょうか? 勘で以下のようにしてみたのですが、エラーになってしまいました。 year(CDate([列名]))+month(CDate([列名]))+"01"
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Access は "20060321" のような文字列を日付として認識してくれませんからあくまで文字列として以下のように扱ってしまった方が楽だとおもいます。 Left([列名],4) & Mid([列名],5,2) & "01"
その他の回答 (1)
全て関数化するのも何でしょうが... ? GetDate("2006/03/21", 0, 1) 2006/03/01 Public Function GetDate(ByVal Now As Date, _ ByVal Move As Integer, _ ByVal Hiduke As Integer) As Date GetDate = DateSerial(DatePart("yyyy", Now), _ DatePart("m", Now) + Move - (Hiduke = 99), _ Hiduke * Abs(Hiduke <> 99)) End Function 質問自体に即答するならば... ? CDate(year(CDate("2006/03/21")) & "/" & month(CDate("2006/03/21")) & "/1") 2006/03/01
補足
日付は数値8桁で、スラッシュが入っていないんです。
お礼
ありがとうございました。 教えていただいた方法でうまくいきました。