• 締切済み

Access2007の日付/時刻型フィールドで、時を二桁にする書式

お世話になります。 Access2007の日付/時刻型フィールドで、日時を「2007/07/09 01:22:33」というふうに表示させるにはどういう書式にしたらいいんでしょうか? 「yyyy/mm/dd hh:nn:ss」と入れてみたのですが、時が一桁だと一桁になってしまいます。 ヘルプの「hh」のところには「時を 2桁の数字で表示します (00 ~ 23)。」と書いてありますが、「h」の場合と同じようになってしまいます。 時も二桁にする書式を教えてください。よろしくお願いします。

  • wFw
  • お礼率10% (3/29)

みんなの回答

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.4

>それをデザインビューの書式のところに入力するにはどうすればいいんでしょうか? 前回の回答 >書式にはありません >自分でそのような文字列を作ることになりますね

wFw
質問者

補足

No.3で教えていただいた文字列を入力できないのですが…。 どこに入力すればデータシートビューに反映されるのでしょうか? よろしくお願いします。

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.3

>その作り方が知りたいです。 Format([日時],"yyyy/mm/dd") & Format(Hour([日時])," 00") & Format([日時],":nn:ss")

wFw
質問者

補足

すいません。それをデザインビューの書式のところに入力するにはどうすればいいんでしょうか? 入力してEnterを押すと、変な文字に変わってしまいます…。 データシートビューの画面で時を二桁にしたいです。

  • bonaron
  • ベストアンサー率64% (482/745)
回答No.2

"Format/書式" プロパティ - 日付/時刻型 のヘルプには カスタム書式は、Windows のコントロール パネルの地域の設定に指定された値に従って表示されます。地域の設定に指定された値と矛盾するカスタム書式は、無視されます。 とも書かれています。 コントロール パネルの地域の設定の時刻を HH:mm:ss にすれば 2桁表示になります。 ただし、これでは、パソコンのすべての時刻表示に影響します。 Access で、表示のみで良ければ コントロールソースを、例えば  =Format(Now(),"yyyy/mm/dd hh:nn:ss") のようにする、という方法も有りますが。

wFw
質問者

補足

なるほど…。その部分を見落としていました。 =Format(Now(),"yyyy/mm/dd hh:nn:ss") を書式のところに入力してみましたが、ちゃんと入りませんでした。 パソコンの設定は変えずに、Accessのデータシートビューで思い通りに表示させることはできないんでしょうか?

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.1

書式にはありません 自分でそのような文字列を作ることになりますね

wFw
質問者

補足

その作り方が知りたいです。

関連するQ&A

  • 日付や時刻の"01"を" 1"に変換したいです。

    下記のような問題で悩んでいます。何かよいアイディアがありましたら教えて下さい。 【要件】 ・SimpleDateFormatで指定された書式の文字列にした後、年月日時分秒ミリ秒の"01"~"09"を" 1"~" 9"のように前0を半角スペースに一括変換したい(年は書式がyy形式の場合のみ)。 ・SimpleDateFormatへの書式はエラーが起きない限りどんなものでも受け入れる(通常、書くわけがない書式についても)。 例) "yyyy/MM/dd HH:mm:ss:SSS" "'yyyy/MM/dd HH:mm:ss:SSS形式:'yyyy/MM/dd HH:mm:ss:SSS"  ※''の中にあるMMはテキストなので英字のまま。 "yyyy/MMMMMMMMMMMMMMMMMMMM/dd HH:mm:ss:SSS"  ※Mの数は不明 "yyyy/MM/dd MM MM HH:mm:ss:SSS"  ※月の表示指定が複数 引数 :日付(yyyyMMddHHmmssSSS形式), SimpleDateFormatへの書式 戻り値:SimpleDateFormatで変換後に"01"~"09"を" 1"~" 9"にした文字列 自分なりの検討案としては下記になります。 a.引数の書式をそのままSimpleDateFormatに引き渡ずに、一部修正してから呼び出す。 例)"yyyy/MM/dd HH:mm:ss:SSS"→yyyy/_M/_d _H:_m:_s:__S" ※"_"は半角スペースです。 実際はMやdなどが2桁になる場合は変換しません。 かなりごりごり200行ぐらい試しに書いたのですが、対応できないケースが出てきてその都度エンドレス状態です。 ちょっとこのまま実装するわけにいきません。いつバグがでるか・・・。 b.SimpleDateFormatで変換後に年月日時分秒ミリ秒に該当する箇所に"01"~"09"があったら置換する。  引数の書式からMMやddのindexを保持して、SimpleDateFormatで変換後の該当indexに置換。 例) 書式:"yyyy/MM/dd_HH:mm:ss:SSS" 日付:"20090101010101001" "2009/01/01_01:01:01:001"→"2009/_1/_1__1:_1:_1:__1" ※"_"は半角スペースです。 但し前提として、書式とSimpleDateFormatで変換後の文字列が1対1になっている必要があります。 単純な例ですと 書式:"yyyy/MMMM/dd HH:mm:ss:SSS" 書式のddは11~12桁目ですが、SimpleDateFormatで変換後は下記のようにインデックスがずれます。 "2009/1月/01 01:01:01:001" "2009/12月/01 01:01:01:001" もしかしたら下記のような感じで吸収できるのかもしれませんが、ちょっと個人的に出来そうに思えませんでした。 月が1桁 かつ 書式が"M"の場合 月が1桁 かつ 書式が"MM"の場合 月が1桁 かつ 書式が"MMM"の場合 月が1桁 かつ 書式が"MMMM"の場合 月が1桁 かつ 書式が"Mxn"の場合 月が2桁 かつ 書式が"M"の場合 月が2桁 かつ 書式が"MM"の場合 月が2桁 かつ 書式が"MMM"の場合 月が2桁 かつ 書式が"MMMM"の場合 月が2桁 かつ 書式が"Mxn"の場合 ここ1,2週間ほど煮詰まっています。どなたかアドバイス頂けると助かります。 自分的なネックは書式が限りなくフリー形式なところです。

    • ベストアンサー
    • Java
  • 【Access】できればクエリにて 日付(yyyy/mm/dd)+時間(hh:mm)の計算 

    いつもお世話になります。 フィールド「日付」:日付 (S) ~YYYY/MM/DD形式~ と フィールド「時間」:時刻 (S) ~HH/MM形式~ があります。 これらを合算し、 (1)日付 (標準)  ~YYYY/MM/DD HH:MM:SS形式~ (2)日付 (標準?) ~YYYY/MM/DD HH:MM形式~ にしたいのですが、 レコードの更新欄ではどのようにビルドさせればよろしいでしょうか? 教えていただけますでしょうか? よろしくお願いします。

  • Accessの日付フィールドデータの取得について。

    VbScriptでオブジェクトに、Accessの日付フィールドデータを取得するのですが、その際、 "YYYY/MM/DD HH:MM:SS" の形式で取得するにはどのようにしたらよいのでしょうか。 よろしくお願いします。

  • ACCESSの書式設定

    ACCESS2000を使用しています。 テーブルのデータの日時間の書式をYYYY/MM/DD hh:nn:ss としたいのですがどうすればよいのでしょうか? 月と日が1月~3月には 01~03にデータ変換をおこないたいです。 時分秒には、必ず2けたに変換したいです。 2006/8/8 9:8:7を 2006/08/08 09:08:07 にテーブルのデータを変換したいです。

  • 「yyyy/mm/dd hh:mm」が「yyyy/mm/dd hh:nn」へ変化する

    access2003を使用しています。 時刻の「分」の表示形式で気になることがあるのですが テーブルのデザインで フィールド1のデータ型を「日付/時刻型」にし 書式を「yyyy/mm/dd hh:mm」と入力しても 「yyyy/mm/dd hh:nn」に変化してしまいます。 問題なく「2009/02/28 20:33」と表示されるのですが なぜmからnへ変化してしまうのでしょうか? また デザインで書式を「hh:mm」だけ入力した場合は 「時刻 (S)」へ変化します。 何か少しでもわかる方ご回答よろしくお願いします。

  • ACCESS 日付型でEXCEL出力 

    日付/時刻型の項目に yyyy/mm/dd hh:mm:ss(2007/01/11 12:10:33)の形で入っているのですが、 以下のような処理でEXCELにエクスポートすると・・・ strSQL = "SELECT Time AS 日時 FROM T_TIME" Set qryBuf = CurrentDb.CreateQueryDef(Q_Time, strSQL) DoCmd.TransferSpreadsheet acExport, , Q_Time, txtFileName, True EXCELの表示は「2007/01/11」と表示されてしまいます。 表示形式を変更すれば「2007/01/11 12:10:33」で表示されるのですが その手間は省きたいと思っています。 一発で「yyyy/mm/dd hh:mm:ss」の形式で出力する方法は無いでしょうか?

  • MS-ACC2000 レポートでの日付書式について

    レポートでテーブルから日付項目を配置し、書式に yy/mm/dd hh:nn を指定しました。 期待する結果としては、 02/06/10 11:00 02/05/27 09:36 02/06/11 10:14 04/11/12 09:17 という感じで印刷されるだろうと思っていたのですが、実際の結果は 2002/06/10 11:00 2002/05/27 9:36 2002/06/11 10:14 2004/11/12 9:17 となり、「年」のところと「時」のところが期待と反してしまいます。 特に「時」のところは桁がズレてしまい何とかしたいのですが、 書式の指定で他の方法はありませんでしょうか? コントロールソースで取得元をFormat関数で =Format(項目名,"yy/mm/dd hh:nn") とし、書式を空白にすると期待する結果は得られますが、 日付項目から書式で編集する方法が何故ダメなのか。。。

  • 日付・時刻型の条件抽出方法について教えてください。

    1.accessで日付・時刻型(yyyy/mm/dd hh:nn:ss)のデータを持つフィールドから、between関数or<>の式で期間を抽出する。 2.[開始日]と[終了日]をパラメータorフォームのテキストボックスに入力して、期間抽出する。 3.[開始日]、[終了日]は日付のみ入力したい(yyyy/mm/dd)。 4.その際、[終了日]は入力した日付の00:00:00を持つレコードしか抽出されず、同日で以降の時間を持つレコードは抽出外になってしまう。 という問題を抱えています。 [終了日]に"+1"を加えたのですが、"式を評価することができません"が返ってきます。 上記を解決できる方法ご存知の方、教えていただけますでしょうか? よろしくお願いします。

  • ACCESSの日付形式

    テーブルに日付形式のフィールドがあり、エクスポートすると、形式がyyyy/mm/dd hh:mm:ddになってしまいます。 yyyy/mm/dd形式でエクスポートするには、どのようにしたらよいでしょうか。 VBAのDocmd.TransferTextで行いたいと思います ちなみにAccess97です。 よろしくお願いします

  • accessのtextboxの日付nul時書式設定

    accessの日付を入力するテキストボックスの書式を使って 未入力の時は、「____年__月__日」と表示させ、 入力時にyyyy年mm月dd日 という書式を適用させようと思っています microsoftのヘルプには 「数値フィールドまたは通貨フィールドの書式を設定する」 正、負、ゼロ (0)、Null (未定義) の 4 種類の数値に書式を指定できる」 とあるので、それにならって 「yyyy\年mm\月dd\日;;;"____年__月__日"」 としました。 しかし、これで未入力のときは確かに 「____年__月__日」と表示されるのですが、 テキストボックスがフォーカスに移動すると、 「____年__月__日」という値がのこってしまい消えません (deleteやbackspaseで削除しなければいけません) 「;;;"____年__月__日"」 や 「0;;;"____年__月__日"」 の場合はテキストボックスにフォーカスが移動するとともに ちゃんと値がきえるのですが、日付の場合はnullの書式設定はできないのでしょうか? この現象のために、いちいちvbaで対応しなければならず不便に思っています。

専門家に質問してみよう