• ベストアンサー

テキスト型項目を日付型項目に定義変更することは可能?

WinXPでACCESS2000を使用しています。 今、サーバ上のDBにリンクし、必要項目を抽出し、Excelに展開したところ、本来日付である項目が、 テキスト型となっており、日付として扱う事が出来ません。 Excelでセルの書式変更をかけても、****となってしまいます。 尚、サーバのDBの定義を変更する事は出来ません。 何か良い方法はないでしょうか? よろしくお願いします。

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

  • ベストアンサー
noname#60992
noname#60992
回答No.3

20051209というのは日付型のデータではないので数値としてインポートされています。 エクセルで直すこともアクセスで直すことも可能ですが、とりあえず何度も抽出するのであればアクセスで直したほうが便利でしょうから、抽出クエリの[日付]フィールドを date: =dateserial(left([日付],4),mid([日付,5,2),right([日付],2)) と書き換えてみればできると思います。 日付のフィールドにスペースがあるとその前に省いておかないとだめですけど。

baura
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • shiotan99
  • ベストアンサー率68% (140/203)
回答No.2

こんにちは~ エクセル側で日付変換してもよいなら次のようにしてみてください。 20051209 のようなデータが入っている列を選択 メニューのデータ~区切り位置 表示されたダイアログの下にある <次へ>を2回クリックして 3画面目へ 「列のデータ形式」 から 「日付」 を選び、<完了>をクリック 以上で、日付データに変換されると思います。

baura
質問者

お礼

Excelでも出来たんですね。^^; どうもありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
noname#60992
noname#60992
回答No.1

accessでサーバ上のdbのテーブルにリンクしてエクセルに出力しているという前提でよろしいでしょうか? リンクテーブルで、データ型を選ぶ際に日付型を選べば、大丈夫だと思いますが、どうしてもエラーが起きる際は Cdate や Dateserialなどを使って、別テーブルに書き出した後エクセルに出力すればよいかと思います。 もともと、リンクテーブルにどのような形で入力されてきますか? 2005/12/9 or 20051209 それによって多少扱い方が変わってくると思います。

baura
質問者

補足

16Augustさん、早速ありがとうございます。 テーブルリンクから抽出クエリを実行後、ファイル出力で、Excelに出力しています。 リンクテーブルで、直接定義を変更する意味ですが、大元のdbテーブルの属性を直接変更するという事ではなく、あくまでもAccessで取り込む際の変更と考えて宜しいでしょうか?そのあたりもよくわかっていませんでした。尚、形式としては、20051209で出力されています。 それから、素人なのでCdate や Dateserialの使い方も良くわかりません。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • CSVやTEXTで取得した情報を、EXCEL上で、日付に変更は無理でしょうか?

    まだまだ初心者で、初歩的な質問ですいません。 CSVやTEXTで取得した情報を、EXCELで処理しようとしているのですが、 たとえば、CSV上のある情報の日付が”19981215”と取得した場合に、 EXCELの日付として認識させる為に、 ”1998/12/15”と簡単に変更させる方法ってありませんか? セル上の書式変更とかいろいろ試してみたのですが、だめでした。 やはり、無理なのでしょうか? 無理なら無理で、地道に1つずつ変更して行こうとは思っています。 宜しくお願いします。

  • DB抽出の日付が参照できない

    DB抽出データをエクセルに出力して仕事用に参照しています。 エクセルA列1に任意の日付を入力して、仕入れの集計をしてるのですが、参照してくれません。(一致しない?) 抽出されたエクセル日付列のデータ書式定義をみると、 「ユーザー定義dd-mmm-yyyy」となっており、 データは、 (例) 日付列 2008/6/10 6:53:41 と時間まで入っていました。 DBに書き込まれた時間だと思いますが。。。? A1に任意入力「6/10」して、日付列と一致した場合に、 仕入れ数を合計したいのですが、 条件を B1=A1 B1=DAY(A1) B1=MONTH(A1)・・・ などいろいろ試みたのですが、抽出してくれませんTT 日単位でいいのですが、時間まで一致しないとだめなのでしょうか? スキル足りません・・・お力を

  • セルの書式を日付からユーザー定義にすると不具合が

    エクセルのバージョンは2007です。 上司から仕事のスケジュール表をもらいました。 昨年度取り扱ったクライアントと仕事の工程表が既に乗っており、それを参考にして事前にこちからか連絡をとったりします。 ですので、クライアントや日付の情報はデリートできません。 今、セルの日付の欄の書式は日付で○月○日となっています。 ただ、それだと見づらいのでmm/ddの書式にしたいのです。 書式の変更で日付からmm/ddを選べばいいのですが、ここで一つ問題が。 今年のスケジュールを上書きして入力するときに、テンキーだけ たとえば0421と入力したら4/21と表示されるようにしたいので ユーザー定義の書式で##"/"##としたいのですが、 こうすると、日付がめちゃくちゃになってしまいます。 日付のデータだけ、別シートに数値貼り付けで張り付けて あとから貼り直そうとしても、日付書式で入力されている数字が 実際の日付の数字に変換されるわけではないので同じことです。 セルの書式を##"/"##にして、現在入力されている日付を反映させるには どうしたらいいのでしょう。

  • エクセルで日付けの書式の設定方法

    エクセル2010で、「2016年11月30日」という書式で入っているセルの日付を、指定の書式「November 23.2016」に変更したいのですが。 指定の書式なので、「スペース」や「.」も含めて設定したいのですがユーザー定義でどう設定するのか分かりません。

  • エクセルの日付の形式を変更する方法を教えて下さい

    エクセルのファイルの日付の形式を変更したくて、セルの書式設定でやってみましたが出来ません。 2014.10.5←この様な形式を→2014/10/5に変更します。 宜しくお願い致します。

  • ユーザー定義を維持した日付と記号の合体について

    お世話になります。データ抽出にあたり、下記の作業を行いたいのですが、方法はありますでしょうか? セル1 日付データ【ユーザー定義:yyyy/mm/dd】+ セル2 記号データ >= を合体させ、且つユーザー定義は維持する。 例:2008/05/01 + >= を合体させ、2008/05/01>=としたい。 合体後データの書式は文字列ではなく、ユーザー定義を維持したいのです。 恐れいりますが、ご回答いただければ幸いです。宜しくお願い致します。

  • ユーザー定義について・・・

    カテゴリーが合っているか分かりませんが、調べても分からないので、是非お力を貸して下さい。エクセルです。 例えばA1セルに未来の日付が入力されています。その入力されている日付の10日前になったら、その日付を自動で赤色表示させる事は可能でしょうか。曜日の場合は土曜なら[青]、日曜なら[赤]と表示させるのは、可能ですよね。 セルの書式設定のユーザー定義?で設定するのでしょうか。その場合の書式を教えて頂きたいです。 勉強不足ですが、よろしくお願いします。

  • 数値を日付けに変更したい

    例えば、エクセルの1セルに20130401と数値があります。たて行に数値が並んでいます。 これを平成25年4月1日及び2013/04/01に変更したい。 セルの書式設定で分類 日付に合わせても、また式 DATEを開いても良く分かりません。 教えてください。 初心者に毛が生えた程度です。 Excel、ソフトは2002で、マイクロソフトXPです。

  • エクセルで文字列を日付に変更したいのですが

    テキストデータをエクセルに変換したのですが、日付が6桁の和暦の文字列のため書式表示で変更しても正しい日付に変わりません。どうすればいいのかわからないので、どなたかお詳しい方教えていただけませんでしょうか。 例えば 180508 150530 080712 といった数字を H18.05.08 もしくは 2006/05/08 H15.05.30 もしくは 2003/05/30 H08.07.12 もしくは 1996/07/12 に、変更できないものでしょうか。

  • EXCEL2007で、セルに「ユ-ザー定義(yy/m/dd)」で日付を入力し保存しましたが、日付がいつの間にか変更されています。

    EXCEL2007を使用しています。 会社の出荷リストとして使っています。 セルの項目は、1列目に下記項目を入れ2列目から実際のデータを入れています。(データは6200行程使っています。) A2(セル番号)・・・製造番号 B2(セル番号)・・・台数 C2(セル番号)・・・支営番号 D2(セル番号)・・・出荷日 E2(セル番号)・・・代理店名 F2~Q2・・・いろいろ セルのD列に、セルの書式設定で「ユ-ザー定義(yy/m/dd)」で日付を入力し、保存しましたが、いつの間にか日付が変更されている箇所があります。 最初は、出荷日や製造番号順に並び替えをするからこのような現象が起こるのかと思いましたが、並び替えをやめても、いつの間にか日付が変更されている箇所があります。 ご存知の方、よろしくお願いいたします。

専門家に質問してみよう