6

Excel ファイルを Access にインポートするときに既定のデータ型を変更する方法はありますか? (ちなみにAccess2003を使っています。)

インポートされる各列に任意のデータ型を自由に割り当てることができる場合があることは知っていますが、それは Excel 以外のファイルをインポートする場合に限られます。

編集:明確にするために、インポートされた列のデータ型を変更できるインポートプロセスのステップがあることを理解しています。

実際、それが私が尋ねていることです。何らかの理由で-おそらく常にExcelファイルである可能性があり、他の何かがある可能性があります-データ型を変更できない場合があります.ドロップダウンボックスがグレー表示され、Accessが正しいと想定するデータ型をそのまま使用する必要があります.

たとえば、列#105(または同様のもの)がほとんど数字(コード:など)で埋められているアクセスで、大規模なExcelファイル( 12000行以上、〜200列1=foo, 2=bar)をインポートしようとしましたが、いくつかありますそこにもアルファコードの (A=boo、B=far など)。Access は、 ( Excel ファイル自体の値Numberを変更した後でも) データ型であると想定したため、これらのアルファ コードでエラーが発生しました。Formatインポート時にデータ型を変更することが許可されていれば、多少の手間は省けたでしょう。

Access ではできないことを求めているのでしょうか、それとも何か不足していますか? ありがとう。

編集:役立つアドバイスを提供する以下の 2 つの回答があります。ExcelファイルをCSVとして保存してからインポートすると、うまく機能し、Chris OCが言うように簡単です. インポート仕様を保存するためのアドバイスも非常に役立ちます。ただし、 DKによるレジストリ設定の回答を「受け入れられた回答」として選択しました。これは、私の主要な問題 (Access でデータ型が正しく割り当てられていない) を解決するために使用できる1 回限りの手順であるため、回答として気に入りました。要するに、このソリューションではデータ型を自分で変更することはできませんが、Access がデータ型を正確に推測できるようになるため、問題が少なくなります。

4

8 に答える 8

3

これを行うにはいくつかの方法があります。最も簡単な方法は、Excel で .xls ファイルを .csv ファイルに変換することです。これにより、インポート時にすべての列のデータ型を選択できるテキスト インポート ウィザードを使用して Access にインポートできます。

これを行うもう 1 つの利点は、csv (またはテキスト) ファイルのインポートが xls ファイルのインポートよりもはるかに高速であることですこのインポートを複数回行う場合は、インポートのセットアップ設定をインポート仕様として保存してください。(テキストのインポート ウィザードで、左下の [詳細...] ボタンをクリックし、[名前を付けて保存] をクリックして仕様名を指定し、行った変更を保存します。)

于 2008-09-23T17:50:37.727 に答える
2

これ、Excel Jet ドライバーのデフォルト設定が原因である可能性があります。次のレジストリ キーを調べて、その値をデフォルトの 8 から 0 に変更します。これは、「最初の 8 行だけでなく、すべての値に基づいて列のデータ型を推測する」ことを意味します。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel]
"TypeGuessRows"=dword:00000000

これが機能するかどうか教えてください。

于 2008-09-23T17:36:21.210 に答える
0

CSVファイルからインポートする場合は、schema.iniも確認できます。これにより、インポートプロセスのあらゆる側面を制御できることがわかります。

于 2008-09-24T09:11:10.883 に答える
0

アクセスは必要なことを実行できますが、それを行う簡単な方法はありません。1 つは Excel データで、もう 1 つは最終的な Access テーブルです。両方のレコードセットが開いたら、Excel データを参照して Access テーブルに追加することで、一方のレコードセットから他方のレコードセットにデータを転送できます。この段階で、要求に応じてデータ型を変更できます。

于 2008-09-23T19:56:35.537 に答える
0

Access では、インポート プロセスでデータ型を指定できます。問題は、次の時間の「追加」プロセスにあります。データ型へのインポートについて尋ねられず、変更したことを忘れます。MS Access のバグだと思います。

于 2018-05-02T00:59:14.863 に答える
-1

アクセスはこれを行います。

インポート プロセスでは、各列のデータ型を定義できます。

于 2008-09-23T17:26:04.743 に答える