• 締切済み

【Access2010】 数10億円のインポート

txtファイルからAccess2010へ「40億円」をインポートしようとするとエラーになりました。  ファイル形式: 2002-2003形式(.mdb)  データ型: 数値型  フィールドサイズ: 十進型 ネットでいろいろ調べて、フィールドサイズを「倍精度浮動小数点型」してもダメ、データ型を「通貨型」にしてもダメ、お手上げ状態です。 唯一インポートできた方法はデータ型を「テキスト型」にした場合のみでした。 ファイル形式は社内の互換性の問題上2007形式(.accdb)にはできません。 テーブルに直接入力すれば入れることはできますが、毎回そんな面倒な作業はできません。 「数値型」のままインポートする方法はありませんか?

  • KO1014
  • お礼率97% (534/549)

みんなの回答

  • panacon
  • ベストアンサー率31% (214/679)
回答No.2

テキスト型はテキスト型でインポートする必要がありますので、インポート後に別テーブルに追加する形にして、その際に数字に見えるテキストを実際の通貨にすれば良いと思います。インポートするテーブルをImp1、変換後をImp2、Imp1と2の削除クエリをDimp1、Dimp2として、次のようにマクロを作ります。 1、クエリを開く、Dimp1 2、クエリを開く、Dimp2 3、テキストインポート(インポート定義登録) 4、Imp1を使って追加クエリを実行する、追加先はImp2。その時、テキスト数字に×1の式を書く。テキスト数字は、1倍すると実際の数字になります。エクセルでもそうです。そうすると、数字型でも通貨型にもデータ追加ができます。

KO1014
質問者

お礼

ご回答ありがとうございました。 「インポート用テーブルを用意せよ」という意味ですよね?それは実験済です。 本来インポートしたいテーブルのフィールドを画像の通りに設定しておいて、インポート用テーブルから追加クエリーで入れることはできました。 希望としては、本来インポートしたいテーブルへ直接インポートしたかったのですが、無理なんですかねぇ。 余分な手間が増えてしまいますがマクロに入れてしまえば実行するだけですので、この方法で処理します。

回答No.1

ご質問をそのまま信じると、漢字でかつ単位の円がついたままのテキストを数値として読み込むって話ですよね。 無理です。 数値型は数値のみしか入れられません。事前に漢字表記を数値にして、単位を外す必要があります。

KO1014
質問者

お礼

ご回答ありがとうございました。 あいまいな表現で申し訳ありません。正しくは「4000000000」です。

関連するQ&A

  • Accessへのインポート時に数字が正しく設定されない

    Access2000で、あるCSVをインポートしたところ、数字の項目正しく入らない 事象が起きました。 (CSVでは"665554368"という数字が、Accessでは"665554340"になってしまいます。) 金額に該当する項目なので、正しく入らないと困るのですが、原因は何が 考えられ、どうすれば解決するでしょうか? 以下の方法を試しましたが、いずれもダメでした。 ・該当の値が入るフィールドのデータ型を以下のものにする。  →通貨型、単精度浮動小数点型、倍精度浮動小数点型  (いずれもダメです) ・CSVの区切り文字を別の文字に置換する。  →"|"だったものを、","区切りにしましたがだめでした。 ・CSVをExcel2003形式で保存し、Excelをインポートする。  →直接CSVをインポートしたときと同じ数字になりました。 お手数ですが、皆様の知恵を貸していただけないでしょうか。 よろしくお願いします。

  • Excel 文字列データ から Access へ インポート フィールドサイズを小さくしたい。

    こんにちは、 Excel2003の文字列データをAccess2003へインポートしたところ、インポートされたデータのフィールドサイズが255になります。 これをその後、手動で小さくするのですが、インポートの時点で意図したフィールドサイズにすることはできないでしょうか? 他、数字データは、倍精度浮動小数点型になるのですが、これも、整数データにしたいのですが、何か良い方法はないでしょうか? 何かお分かりの方がいましたら教えてください。よろしくお願いします。

  • アクセス インポートかファイル形式を変えたい

    壊れたアクセスファイルの中身を 新規 Microsoft Access データベース.accdbにインポートするには? 今まで開けてたのに、いきなり開けなくなった、壊れたアクセスファイルがあります。 どうしても開けないので、 新規 Microsoft Access データベース.accdb を作りそこにインポートしようとしたら、 「データベースの形式を認識できません」 となり、インポートできません。 mdb形式なのが原因なのでしょうか? win7、オフィス2010ですが、いままでmdb形式で使えてましたが Windows Updateをしたら、使えなくなりました。 mdb形式が原因なら中身はそのままで壊れたファイルをaccdbに変えたいのですが どうすればいいですか? よろしくお願いします。

  • アクセスのデータ型。数値型についてお聞きしたいのですが・・・

    アクセスのデータ型。「数値型」ですが、「フィールドサイズ」に (1)バイト型(0~255の範囲。小数点以下の数値は扱えない) (2)整数型(-32,768~32,767の範囲。小数点以下は扱えない) (3)長整数型(-2,147,483,648~2,147,483,647の範囲。小数点以下は扱えない) (4)単精度浮動小数点型(-3.402823×10^38~3.402823×10^38の範囲。             小数点以下の数値が扱える) (5)倍精度浮動小数点型(-1.79769313486231×10^308~-1.79769313486231×            10^308の範囲。少数点以下の数値が扱える) (6)十進型(-10^28-1~10^28-1の範囲。小数点以下の数値が扱える) と6種類決められますが、それぞれの「選び方の違い」と「その理由」を 教えてください。 たとえば、(1)~(3)くらいなら分かります。 扱える数値の桁数が違うということですよね?で、(1)~(3)を選ぶ時と(4)~(6)を 選ぶときで大きな違いというと、「小数点以下の数値が扱えるかどうか」 ですよね?そういう認識であっているか・・・ということと、上記の(1)~(6)を 「選び分ける必要がある場合」というのを教えてください。 なぜ、このような6種類に分かれているのか、人に説明しないとなりません。 よろしくお願い致します。m(_ _)m

  • アクセスからのデータインポート時のエラーについて

    AccessのデータをSQLサーバーにインポートする時のエラーについて教えてください。 Accessのあるフィールドだけうまくインポートできません。そのフィールドは、Access側がデータ型が整数型、フィールドサイズが単精度浮動小数点型、SQLサーバー側がVARCHAR(128)です。ちなみに、numeric、float 、realでもだめでした。 SQLサーバーの「データのインポート」でインポートを行っています。インポートは正常に終了しました。とメッセージがでるのですが、データをみてみると、どうやらオーバーフローしてしまっている感じです。データが2.8197898E-2といった形になってしまっています。ちなみに、アクセスの場合はこの値は、0.0281979というデータです。 どのようにしたら正常にインポートできますでしょうか。

  • AccessでExcelファイルをインポートするとエラーが・・・

    教えてください!! Excelファイルの書式は表示形式(標準)でMSゴシック 、38列1900行くらいのデータです。 これをインポートすると、1列だけインポートエラーになります。 調べてみると、その列だけデータ型が「倍精度浮動小数点型」になっています。これが関係あるのでしょうか? なぜ、他はテキスト型になるのに、これだけこんな型になってしまうか不思議です。直したくてもインポートウィザードでは、グレーになっていて修正できません。

  • テーブルに小数点以下の値を入れたい場合

    アクセスのテーブルに0.001と入力したい場合、 データ型を数値型にし、 フィールドサイズは 単精度浮動小数点型と倍精度浮動小数点型では どちらを選べばいいのでしょうか? どちらも小数点の入力ができました。

  • アクセス2010 VBA 指定セルのインポート

    アクセス・エクセル2010を使用しています。 モジュールを用いて以下の作業を実行したいと考えていますが、 初心者につき、ご教示いただけますでしょうか。 1.ダイアログを表示させ、取り込みファイル(.xls)を指定してインポートしたい ※1シート目指定(シート名は変動の可能性アリ) 2.1で指定したファイルと同じフォルダ内にあるファイル(.xls)を全てインポートしたい ※各ファイル、インポートは1シート目のみです 3.フォームのテキスト(作成済:フォーム名(frm)・テキスト名(txt))で取り込みファイルの範囲指定をしたい ※1行目からの記載では無いです ※フィールド名行は変動しませんが値行は変動し、月によって列も変動する可能性があるため、テキストを使って範囲の変更がしたいです ※取り込みファイルの様式(形式・範囲)は全て同じです:形式はすべて倍精度浮動小数点型です) 具体的には、今月は・・ A列・1~2行目に空白があり、B列~記載がありますが、 インポート範囲としてはK列に項目・7行目にフィールド名になる名称・L8~Wに倍精度浮動小数点型の数値が入っています。 1つ1つの条件であれば、検索すれば(参考にできるものが)出てくるものもあるのですが、 それらを どう組み合わせればうまく作動するのか 処理条件を どう設定すれば良いのかが よくわからず、困っています。 知識不足で申し訳ありませんが、ご指導いただけますと幸いです。 よろしくお願いします!!

  • AccessVBAでフィールドのデータ型(フィールドサイズ)を変更する方法

    Access2000でテーブルを属性を変更しようとVBAで四苦八苦しております。 あるテーブルのフィールドのデータ型のフィールドサイズが「十進型」に なっています。 そのフィールドサイズを「倍精度浮動小数点型」に変更するVBAロジックがわかりません。 お分かりの方がいらっしゃいましたらどうかご教示願います。

  • ACCESSのインポートについて

    MS_ACCESSでインポートをしたいのですが、 インポートすると、実際にデータがあることは確かなのですが、 文字形式がテキストのものだけ インポートすることができず、NULL値になってしまいます。 その他の文字形式(数値型、日付型、通貨型など)はインポート できます。 テキスト型のインポートができるようにすることはできないでしょうか?

専門家に質問してみよう