• ベストアンサー
  • すぐに回答を!

【access】テキストから日付へ変換するとエラーになる

環境 OS:windowsXP pro Access:access2000 こんにちは。いつもお世話になっております。 テキスト形式(20080119)のデータをクエリで日付型(2008/01/19)にしたいのですが上手くいきません。 過去ログ等からCDATE(format([フィールド名],"yyyy/mm/dd"))とすれば良いというのはわかったんですが クエリを実行すると「#Error」となってしまいます。 ちなみに書く場所は選択クエリの「フィールド:」の所でいいんですよね?別フィールドを隣に挿入して記入しました。 テーブルのプロパティから書式を日付(S)に変更するとデータが消えてしまったのでそれは避けたいです。 他のやり方などありましたらご教授願います。よろしくお願い致します。

noname#50640
noname#50640

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数2706
  • ありがとう数3

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

  • ベストアンサー
  • 回答No.1

どうもです。 CDate(Format([フィールド名],"@@@@\/@@\/@@")) では?

共感・感謝の気持ちを伝えよう!

質問者からのお礼

上手くいきました!助かりました。 有難うございます!!

関連するQ&A

  • ACCESS フォームで入力した日付をクエリで読み

    ACCESS フォームで入力した日付をクエリで読み替えたい ACCESS フォームで入力した日付をクエリで使用しているテーブルの書式に変換したい フォーム テキスト名:日付にyyyymmdd で入力します クエリ テキスト名:日付はパラメータとして使用しています クエリ内で使用しているテーブルの日付書式は 日付:yyyy/mm/ddです パラメータは 「日付始」と「日付終」の2箇所のテキストに入力されたデータを使用しています。以下がパラメータです。 Between [Forms]![フォーム]![日付始] and [Forms]![フォーム]![日付終] フォームのテキストボックスにyyyymmddと入力してもクエリでエラーが出ることない パラメータを日付に設定したいのですがどうしたらよいでしょうか? ちなみに、以下の式を入れたらエラーです。 Between CDate(Format([Forms]![フォーム]![日付始],"yyyy/mm/dd")) and CDate(Format([Forms]![フォーム]![日付始],"yyyy/mm/dd")) と入力しましたところ、、、、「式が複雑すぎるか、、、」のエラーメッセージが出てしまいました。 どなたか助けてください。お願い致します。

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

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

  • ACCESSの日付の変換

    WINXP ACCESS2003 データをインポートしたところ、生年月日のデータが 昭33.03.17 と言ったように、和暦になっていたので、クエリで西暦に変換仕様と思い、 Format([生年月日],"YYYY/MM/DD") を実行して変換をかけました。 しかし、実際は変換されず困っています。 どうか、よろしくお願いします。

  • ACCESS97で現在の日付から勤続年月数を算出する関数

    ACCESS97で社員名簿を作っています。 現在の日付から年齢を算出する関数は調べたところ次のようにすればよいとわかりました。 IIf(Right(Format([生年月日],"yyyy/mm/dd"),5)>Right(Format(Now(),"yyyy/mm/dd"),5),DateDiff("yyyy",[生年月日],Now())-1,DateDiff("yyyy",[生年月日],Now())) 次は現在日から入社年月日フィールドにあるデータを使い、勤続年数○年○ヶ月というクエリーを作りたいのですが、○ヶ月を算出する応用がわからずに困っております。 どうかよろしくお願いします。

  • Access ADOで文字列を日付型へinsert

    VBScriptでCSVファイルのデータをADO経由でAccessにinsertしたいのですが、日付型へのinsertがうまくいきません。 CSVファイルにある「8桁日付」(例:20110101)をAccessの日付型フィールドへinsertするのに、以下の試みをしましたが、型不一致etcのエラーがでてしまいました。 どうしたら、insertできるのでしょうか? 1.8桁日付を yyyy/mm/dd に編集(mid使用) してinsert →型不一致エラー 2.CDATE(yyyy/mm/dd) をinsert →型不一致エラー 3.CDATE(#yyyy/mm/dd#) をinsert →型不一致?エラー ハマってしまって困っています。ご存知の方がいらっしゃいましたら是非是非教えてください。

  • ACCESSの日付変換

    アクセスDBのテキスト型で来館日というテキスト型の8桁日付入っているフィールド(例18731023のような)があり、これを帳票タイプのフォームでyyyy/mm/ddで表示させようと思い、 =CDate(Format([来館日],"@@@@\/@@\/@@")) これでうまくいったのですが、 この来館日フィールドにはNullも入るのでNUllでエラーが返ってきてしまいます。これを空白のままで表示する方法がわかりません。 どなたかご教授おねがいいたします。

  • 【Access97】取り込みエラー

    【Access97】取り込みエラー txtファイルで保存してあるデータをAccessへ取り込む作業をしています。 項目毎の区切りはカンマ区切(,)になっており、データ内容は「数値」「テキスト」「日付」等各種あります。 txt内の「日付」形式が『d-m-y』なのでAccessのフィールド書式も『日付(M)』にしてあるのですが取り込みエラー(データ型の変換エラー)となってしまいます。 そこで、txtファイルをExcelで開いて[データ-区切り位置]で区切り、書式設定で「日付」を『yyyy/mm/dd』に変更してからAccess(フィールド書式を『日付(S)』に変更)へコピーしています。 <例> txtデータ:01-AUG-10 → Access:2010/08/01 この作業を毎回しているのですが、Excel上ではなくtxt上で直接『d-m-y → yyyy/mm/dd』に変換、もしくは『d-m-y』のままtxtから直接Accessに取り込む方法はありませんか? 尚、データは数千件あり「日付」もバラバラな為”置換”機能だとかなりの時間がかかってしまうので”置換”機能は使っていません。

  • Accessで日付を抽出するパラメータを設定したい

    Accessのクエリで日付に対して与えているパラメータがあります。 パラメータで指定したいデータはフォームのテキストに入力した日の23:59:59 以降の日付を抽出したい。 入力:数値8桁(yyyymmdd)で行う 抽出先テーブルのデータ:yyyy/mm/dd hh:mm:ss 現在以下のパラメータを日付に対して与えると「式が複雑すぎます、、、」と注意されてしまいます。 指定日の23:59:59を抽出範囲として指定するのはどうしたらよいでしょうか? 入力値の変換も含めて、以下のパラメータを入れています。 「+"23:59:59"」をとればエラーは出ません。 <=IIF(Len([Forms]![フォーム名]![日付])=8,CDate(Format([Forms]![フォーム名]![日付],"@@@@/@@/@@")),#9999/1/01#)+"23:59:59" どなたか、お助け下さい。よろしくお願い致します。

  • ACCESSの日付形式

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

  • Access2013で翌日のデータのみのクエリ

    お世話になります。 Access2013を使用しており、2つの日付フィールドを比較して 翌日のレコードのみ抜き出したい場合のクエリについて質問で ございます。 日付Aフィールド と 日付Bフィールドが あり、それぞれ日付と時刻が書式yyyy/mm/dd hhmmss で格納されております。 このうち、クエリで抽出したいのは、 日付Bフィールドに格納されている、 日付Aフィールドの翌日のレコードのみを 抽出したいです。 その際、時刻(hhmmss)は無視して翌日のレコードを 抽出したいです。 例えば、 日付Aフィールドに 2016/08/24 15:00:00 2016/08/24 16:00:00 2016/08/24 17:00:00 というデータが格納されていて、 日付Bフィールドに 2016/08/25 00:00:00 2016/08/25 17:00:00 2016/08/26 00:00:00 というデータが格納されていた場合、 日付Bフィールドの 2016/08/25 00:00:00 2016/08/25 17:00:00 のみ抽出したいです。 この場合のクエリの設定方法を教えてください。 どうぞ宜しくお願いいたします。