Access (VBA)

Access VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7全般 : Access 2013)
クエリのエクセル出力
投稿日時: 19/03/25 09:38:54
投稿者: yamasho

お世話になります。
 
クエリをエクセル出力(xls)する時、
かなり前から「DoCmd.OutputTo」を使っていました。
 
書式を反映させたいときは「DoCmd.OutputTo」を使う、
と思っていたからです。
 
今回エクセルの拡張子を「xlsx」にしたくて、
出力するファイル名の拡張子を「****.xlsx」にしました。
 
しかし出力されたファイルを開こうとすると、
 
 
Excelでファイル'****.xisx'を開くくことができません。
ファイル形式または、ファイル拡張子が正しくありません。
ファイルは破損しておらず、
ファイル形式拡張子と形式が一致していることを確認してください。
 
 
というメッセージが出て開けません。
拡張子が「xlsx」の場合、「DoCmd.OutputTo」は使えないのでしょうか?
 
 
DoCmd.OutputTo acOutputQuery, strQuery, acFormatXLS, strPath, False, ""
 
 
ついでに質問です。
「DoCmd.OutputTo」と「TransferSpreadsheet」は
どのように使い分けるのでしょうか?
 

回答
投稿日時: 19/03/25 10:46:18
投稿者: hatena
投稿者のウェブサイトに移動

yamasho さんの引用:

DoCmd.OutputTo acOutputQuery, strQuery, acFormatXLS, strPath, False, ""

acFormatXLSacFormatXLSX に変更してください。
 
yamasho さんの引用:

ついでに質問です。
「DoCmd.OutputTo」と「TransferSpreadsheet」は
どのように使い分けるのでしょうか?

書式を反映させたいときは、DoCmd.OutputTo
データのみの出力したいときは、TransferSpreadsheet
でいいと思います。

投稿日時: 19/04/01 15:44:25
投稿者: yamasho

お世話になります。
 
無事できました。
また、使い分けのご説明もしていただき、
ありがとうございました。