- ベストアンサー
アクセス97をエクセル97にエクスポートして起こる問題
どなたか、ご助力をお願いします。 アクセスでテーブルを作成し、4桁のコード番号をたくさん入力していきます。件数は500件くらいです。そのテーブルをエクセルにエクスポートします。そのデータの名前を仮にAとします。 エクセルにはあらかじめ全顧客リストのマスタデータがあります。そのデータをMとします。Mにはコード番号とコード番号に対する名前と住所などの情報が記載されています。 Aのリストは全てMに含まれます。 AのファイルにMを別シートに置いて、Vookup関数でAのデータのリストを完成させたいのですが・・・。 問題なのは、アクセスからエクスポートしたコード番号の数字と、元々Mに入力されている番号が同じ数字でもどうやら違うようなのです。書式も同じのようですが、Vookup関数では反映されません。 エクスポートしたAのコード番号はセルの左に寄っていて、Mの数字は右に寄っています。Aを右寄せしたり、共に中央寄せをしてもこの問題は解決しません。 エクスポートした番号をエクセルでそのまま入力した番号と同じくするにはどうしたら良いでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 アクセスで抽出したコード番号の範囲を選択し、データ-区切り位置-次へ-次へで列のデータ形式を標準にしてOKでどうでしょう?
その他の回答 (2)
- hakone8ri
- ベストアンサー率18% (4/22)
>Aのコード番号は左に寄っていて・・・ それはデータ型が文字列だから >Mの数字は右に寄っています。 それは、エクセルが数値として認識しているからです。 列幅を小さくしてみると数値なのか、文字列なのか良く解ります。 見かけを同じにしても数値と文字列では違いますので、揃える必要があります。Text関数は数値を文字列に、Value関数は文字列を数値にそれぞれ変換してくれます。 もし将来的にもアクセスからのインポートやらエクスポートをお考えでしたら、Mのデータ上のコードを文字型に変換されることをお勧めいたします。(アクセスでは、一般的にオートナンバー以外のコードは文字列として設定されることが多いですから)
お礼
ご回答ありがとうございます。 エクスポートって思ったよりも複雑ですね。今回は#2の方の回答でできましたが、将来性を考えたデータ作りを考えることも重要ですね。勉強になりました。
ISAMドライバでExcelに出力されたデータは全部文字列扱いになるはずです。(データの先頭にシングルクォート「'」が付加される) これを回避するには、オートメーションでCopyFromRecordsetメソッドを使用して出力するとよいのではないでしょうか。(他の手段が思い浮かびません)
お礼
ご回答ありがとうございます。 文字列として扱われるのですか、勉強になりました。 ところでオートメーションでCopyFromRecordsetメソッドを使用するにはどうしたら良いのでしょうか?HELPを参照してみたのですが、ちょっとわからずにいます。
お礼
ご回答ありがとうございます。 できました!まさにその通りでした。勉強になりました。