• ベストアンサー

アクセス2007で

アクセス2007で、ある2つのフィールドが日付なのですが、テキスト型になっています(20091001の物と2009/10/1となっているがテキスト型のもの)。クエリでこの2つのフィールドを別々に日付型に変更したものを表示させたいのですがどうしたらいいですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.1

テキスト型のフィールド名を「F1」と仮定します。 F1の中身に"/"がある場合はそのまま、なかった場合は8文字と想定して動くものになります。 IIF(InStr([F1],"/")>0,[F1],Format([F1],"@@@@/@@/@@")) これは、日付の表示形式の文字列になるので、必要なら日付型へ変換します CDate(IIF(InStr([F1],"/")>0,[F1],Format([F1],"@@@@/@@/@@"))) 別々のフィールドなら、同様に CDate(IIF(InStr([F2],"/")>0,[F2],Format([F2],"@@@@/@@/@@"))) とかします。

doradora64
質問者

お礼

ありがとうございました。 助かりました。

関連するQ&A

  • アクセスのクエリで

    アクセスのクエリで、フィールド1を DATE()にし、本日日付を表示させていますが、これを日付型ではなく、テキスト型で表示させる事はできますか?表示は2009/11/15表示で構いません。また、できるのであれば、20091115の様に8文字で表示する事はできますか? 誰か教えて下さい。よろしくお願いします。

  • ACCESSでフォームを作ってるのですが

    宜しくお願いします。 ACCESSのフォームでクエリのフィールドを テキストボックスに表示させたいのですが、 テキストボックスのプロパティのどこを いじればよいのでしょうか? 教えてください。

  • Accessでテキストを日付に変更したいのです。

    Accessでテキストを日付に変更したいのです。 20010401となっているテキストを2001/04/01といった日付、またはシリアル値に変換したいのですが、どうすればいいでしょうか。 クエリーの条件で変えらればうれしいのですが

  • Access テキスト型を日付/時刻型へ変更

    いつもお世話になっております。 Accessについてお願い致します。 テーブル「メインデータ」に日付と時刻が一緒になっているデータがあります。例:2004/01/01/ 10:00 現在、 フィールド名:受付時間 データ型:テキスト型 フィールドサイズ:12 定数入力:0000/00/00\ 00:00;0;_ と設定してあり、問題はこのデータをテキスト型から日付/時刻型「「yyyy/mm/dd @@:@@」)へ変更したいのですが、 テキスト型→日付/時刻型へ変更すればデータが消えてしまいます。 そこで、クエリでFormatを使ったのですがエラーが出てしまいます。 何か良い案はございませんでしょうか? 宜しくお願い致します。

  • accessの文法

    access2000です。 フォーム更新後に フォーム上のテキスト34に、クエリ3のフィールド「年」を代入して表示させるとき こうでいいのでしょうか? Private Sub テキスト34_AfterUpdate() Me.テキスト34 = [クエリ3]![年] End Sub

  • Accessのクエリ / 曜日の表示について教えてください

    お世話になっております。 Accessのクエリについて教えてください。日付から曜日を表示させたいのですが、うまくいきません。 アクセスのクエリの作成の画面で、フィールドのところに Weekdayname(Weekday[日付(MM/DD/YYY形式で日付が入って言います)]と入力したのにエラーが出て更新できません。 どうしたらいいのでしょうか? どうぞよろしくお願いいたします。

  • Accessで家計簿を作っているのですが・・・(再

    いつもおせわになっております。 現在、Accessで家計簿なるものを作っているのですが・・・ まずマスタテーブルから入力データが存在する日付をクエリで抽出し、それをフォームのテキストボックス1のコントロールソースに指定して、そのテキストボックス1に表示されている日付を元にフィルタ機能を使ってその日に入力されたデータ一覧をサブフォームで表示するという方式を取っているのですが・・・(解かり難くてすみません この方式だとクエリのレコードを移動するとサブフォームの表示内容も対応してその日のが抽出されます。 しかし、データがたくさん蓄積されてくると一日ずつ(1レコードずつ)移動すると手間がかかってイライラしそうです。 で、同じフォームにコンボボックス1を追加し、上記にもあるマスタテーブルから入力されている日付を抜き出した日付一覧を取得してあるクエリを値集合ソースに指定してみました。 クリック時のイベント等もちゃんと設定したのですが、うまく動作してくれません。 コンボボックス1をクリックして選択したら、クエリをコントロールソースとするテキストボックス1の表示内容がコンボボックス1で選択されたものに変更される、みたいなことって出来ないのでしょうか? コンボボックス1だけにしてテキストボックス1を消すとコンボボックス1で選択した日付の内容をサブフォームで表示することは出来たのですが、それだとコマンドボタンを押して次のフィールドに移動し、かつコンボボックス1の表示内容も自動変更というのが出来なかったので・・・ 長文でスミマセンが、どなたかお知恵の拝借お願いします。

  • access 文字列で範囲指定する

    Access2010クエリの抽出条件で、 文字列を使った範囲指定は可能でしょうか? ★特定の年月(6桁・yyyymm)の過去12カ月のデータを抽出したい。※指定された年月が201308なら、201207までを取ってくる。 しかし、フィールド型がテキスト型である為、betweenを使えず困っております。 また、できればフィールド型を日付型等に変更せずに済ませたいです。 いろいろと面倒な条件を並べて申し訳ございません。 どうかご教授いただけないでしょうか。 よろしくお願いします。

  • アクセスのテキスト型フィールドの初期値

    アクセスのテーブルにテキスト型フィールド「●●日付」を作成しました。さらに、定型入力の方法として、日付(____/__/__)を指定しています。 このテーブルから、クエリでデータを取得する際、●●日付にデータを入力していないレコードのみを取得したいと思い、クエリの抽出条件として=""(ダブルクォーテーション)や=''(シングルクォーテーション)と記載したのですが、レコードが1件も抽出されません(もちろん●●日付にデータを入れていないレコードは複数あります)。一方で、<>""や<>''で、●●日付にデータが入力されているレコードを抽出しようとした場合は、●●日付にデータが入力されているレコードが抽出されます。 テキスト型フィールドにデータが入力されていないレコードを抽出するクエリはどのようにしたら作成できるのでしょうか?

  • アクセスのクエリで

    アクセスのクエリで、フィールド3にフィールド1÷フィールド2としているのですが、フィールド2に"0"の物があるので、結果が"#エラー"になる物があり、降順で並び変えたいのですが、並びかえられません。 どの様にしたら良いでしょうか? 誰か教えて下さい。よろしくお願いします。

専門家に質問してみよう