- ベストアンサー
Accessのテーブルを既存のExcelファイルへエクスポートする方法
- Accessのテーブルを既存のExcelファイルへエクスポートする方法について教えてください。
- マクロを使用してAccessのテーブルを既存のExcelファイルへエクスポートしているのですが、エラーメッセージが表示されて上手くいきません。
- 他のExcelファイルへのエクスポートは問題なくできますが、特定のExcelファイルに問題があるようです。どうすればエクスポートが成功するでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Microsoft Excel 8-9だったら、ファイルごと書き換えてしまうはずだなぁ。 おかしいなぁ。 ファイルに書き込み保護がかかっているとか、ファイルが壊れているとか、そういう原因も考えられますが、通常は、エクスポートのときにその旨のメッセージが出ます。 リンクがかかってそこでエラーが起きているのだから、Accessのモジュールが壊れているのかもしれません。 申し訳ありませんが、私にはわかりません。
その他の回答 (2)
- yomo3
- ベストアンサー率32% (88/269)
ごめんなさい。 読み返したら、説明不足だと言うことがわかりました。 >エクスポートすると、勝手に新しいシートを作ってテーブル名がそのままシート名になります。 手作業でエクスポートをすると、既にあるシート名と同じテーブル名のテーブルをエクスポートしても、適当に名前を処理してくれますが、マクロで組むと、その適当に名前を変更する処理をやってくれなくなります。 また、シート名も指定できたりしますので、無意識のうちに指定しているかもしれません。その場合、同じマクロを使うと、常に同じシート名になってしまいますね。 そんな関係で、既にあるシート名と同じシート名で保存しようとして、保存したい形式と異なるシートが既にあるので、Accessクンが困ってしまって、エラーメッセージを出すのです。 実際にはリンクしているわけではありませんが、エクスポート実行の段階でリンクが形成されるので、メッセージが「リンク……」となるのです。 今あるExcelのシート名にAccessで付けられたものがあったら、それを変更してからもう一度マクロを実行すればよいのではないかと思います。
補足
再度お答えありがとうございます。 アクセスのテーブル名と同じシート名はないんですよ。 ちなみに手動でエクスポートしてみましたが、既存のエクセルファイルを指定すると同じエラーメッセージが表示されてしまいました。 >保存したい形式と異なるシート 形式というのは何の形式のことなんでしょうか。 エクスポートする時には見当たらなかったようですが、ワークシートの種類のことですか。 マクロでは、Microsoft Excel 8-9を選択しました。 何度も申し訳ありませんが、ご回答お待ちしております。
- yomo3
- ベストアンサー率32% (88/269)
こんにちは! 既存のExcelファイルにエクスポートすること自体はできます。 恐らく、シート名が問題になっているのでしょう。 Accessからエクスポートすると、シート名がテーブル名やクエリ名になりますよね。 Excelの方のシート名を変更すればOKだと思いますよ。 通常、エクスポートしたそのままのデータを使うことはなくて、書式などを変更しますよね。 >「テーブルの形式がリンク後に変更されています。…… っていうのはそれが原因ですね。 また、「リンクする」というのも一回設定すると後がラクなので、エクスポートではなくリンクするというのをイルカ君に聞いてがんばってみるのも良いと思います。 用語が難しめですが、そこを乗り越えるとそんなに難しいモノでもありませんよ。
補足
ご回答ありがとうございます。 せっかくご回答いただきましたが、おっしゃっている意味がいまひとつ理解できませんでしたので、再度ご説明ください。 エクスポートすると、勝手に新しいシートを作ってテーブル名がそのままシート名になります。 そのシート名がまずいんでしょうか。 エクセルにはき出させた後のデータはエクセル上でだけ使用しますので、アクセスとのリンクは必要ないのですが… よろしければもう一度ご回答お願いします。
お礼
何度もありがとうございました。 既存のファイルへエクスポートしないで、新規にエクセルファイルを作成させるように設定してエクスポートします。 また、わからないことがありましたら、ぜひお教えください。