VBAにActiveWorkbook.SaveAs
を使用して.xls
ファイルに保存しようとしているコードがあるマクロファイルがあります。VBでActiveWorkBook.SaveAsが呼び出されたときにエラー1004が発生しました
実際にはExcelファイルを開いており、コマンドプロンプトから".csv"
ファイルパスと"Macro.xls"
ファイルをExcel.exeに渡しています。最初に.csvファイルを起動し、Macro.xlsの最後のコードで".csv"
ファイルが".xls"."c:\\1\\2\\dummy.csv"
から"c:\\1\\2\\dummy.xls"
に保存されています。
ファイル名が"c:\\1\\2\\dummy.xls"
のActiveWorkbook.SaveAsが呼び出されたときに、エラー1004が返されます。Excelファイルが自分のマシンで開かれていないと正常に動作しています。
この問題は、一部のExcelファイルが既に開いている場合にのみ発生します。
My Code:
ActiveWorkbook.SaveAs Filename:= _
xls_file_name, FileFormat:= _
xlNormal, Password:="", WriteResPassword:="",
ReadOnlyRecommended:=False _
, CreateBackup:=False
xls_file_name:Dummy.xls
私はVBに非常に新しいです。誰もこの問題を解決するために私に示唆することができます。これは特にエクセル2016です。エクセル2010では、うまくいきます。
@Ron、申し訳ありません。完了しました。 – Siva
[最小、完全で検証可能な例](https://stackoverflow.com/help/mcve)を投稿できますか?また、実際に[エラー1004](https://stackoverflow.com/questions/9751622/run-time-error-1004-for-saving-excel-file-vba-required)について検索しようとしましたか? )? – Ayak973
@ Ayak973、そうでもやってみたけど、まだ2016が優秀な人がいるときだけ同じ問題に直面している。 Excelが開かれていない場合は、適切に保存することができます。それが私が新しい質問を構成した理由で、それは重複していません。 – Siva