人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

ACCESSのVBAを使ってEXCELをインポートしました。

'エクセルシートをワークにインポート
DoCmd.TransferSpreadsheet , , "W_IN_EXCEL1", strFileName, False, strSeetName1
DoCmd.TransferSpreadsheet , , "W_IN_EXCEL2", strFileName, False, strSeetName2


ところが、4?5回の頻度でデータの並び順が元のEXCELとは狂っています。
いつもEXCELのデータのとおりにインポートするにはどうしたらよいでしょう?

●質問者: katakatayama
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:インポート エクセル データ
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● りくっち
●60ポイント

http://www.naboki.net/access/achell/achell_03.html

お疲れ様です。

私が下手にご説明するより↑のサイトを読んでいただくのが一番だとは思いますが、

簡単に言いますと、ACCESSは簡単に並べ替えが可能なことから、データの順番をファイルの中に保存していないのです。

なので、並び方を指定するまではテーブルビューではデータシートビューの規則で勝手に並び替えられることが普通です。

4.5回の頻度で狂ってくるというのは、MDBを一旦閉じたり、最適化したりなどといったことで、格納順序が自動整列で変わってしまったためではないかと思います。


どうしても元のEXCEL表の順序を保持したいということでしたら、

元のEXCEL表に連番を振っておいて、インポートしてから並べ替えるというのが一番現実的だと思います。


また、何かのシステムに組み込んだり、表示したりするためにその並び順が必要ならば、選択クエリを作成して並び替え設定しておく方法をお薦めします。


以上ご参考まで。

◎質問者からの返答

ありがとうございます。インポートする前のEXCELをコピーして列を追加して連番を振るというのでいこうと思います。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ