MS Access

テキスト型の日付をformat関数で揃える

投稿日:2013年3月5日 更新日:

CSV形式のデータからAccessにインポートしたものだから、日付が2012/5/5やら2012/05/05やら、文字列扱い(日付型でない)の混在したデータの入ったテーブルがある。
これをきちんと並べ替えしたいのだが、Format関数では出来ない(と思っていた)ので、VBAでスラッシュの位置を見つけてそこから桁を取り出して・・・などとなるので、面倒くさいなあ、処理も遅くなるなあ、と避けていた。
しかし今日改めて調べてみると、Format関数でできるではないか。
クエリのフィールドにこんな感じで作った。

ご注文日: Format([ご注文日],”日付 (S)”)

ご注文日: Format([ご注文日],”Short Date”)
でもOK

結果は全て「2012/05/05」のように0が補完される。

-MS Access

執筆者:

関連記事

no image

Accessであらかじめリンクテーブルを開いておくと劇的に高速化

リンクテーブルに対して「Dlookupで値を探して見つかったらCurrentDb.Execute UPDATE~ で値を更新」という処理をループで回している。 この処理、一旦始めると、終えるのに30分 …

Access「実行時エラー3061 パラメータが少なすぎます。2を指定してください」で意外な決着

クロス集計クエリをVBAで読むときで、かつパラメータクエリを使う場合には、クエリのパラメータパネルで、別途、パラメータを指定しなくてはならない(VBAで使わないなら不要) 本日のトラブルは、その後、W …

no image

AccessのDoCmd.OpenForm acPreviewでデータが表示されない

なぜか、フォームに新規データを入力し、印刷プレビュー(DoCmd.OpenForm “見積請求書F”, acPreview)した際に、それまで入力したデータが消えたようになる。 …

no image

Accessで「イベントプロパティに指定した式MouseMoveでエラーが発生しました。フォームまたはレポート上のActiveX コントロールを読み込むときにエラーが発生しました。」

フォームに配置したプログレスバーコントロールの上をマウスポインタが横切ろうとすると、必ず上のエラーメッセージが表示される。 原因がわからず、対処もできず、困っていた。 Google先生も頼りにならず、 …

no image

Accessの複雑な処理のレポート帳票で1ページのみ出力されるはずが2ページ目になぜかページヘッダーが出るトラブルに見舞われ

レポートのデザインビューでいうと上から、レポートヘッダー、ページヘッダー、グループヘッダー、詳細、グループフッター、ページフッター、レポートフッター・・・というような、結構細かいレポートを作っている。 …