0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【ExcelVBA】xls拡張子でExcelを保存する場合のメモ

Posted at

###トピックについて
マクロを使って新しいドキュメントを作成する際に、テンプレートとなるファイルの拡張子が「.xls」だったため、新しいドキュメントも同様の「.xls」で出力することにした。

その際、以下2点の問題を解消した方法についてのメモ
①新しく作成したドキュメントを開こうとすると「ファイルと拡張子が一致しません。」とエラーメッセージが表示される。
②新しく作成したドキュメントをマクロの中で自動で閉じようとした場合に、」Microsoft Excel互換性チェック」のダイアログが毎回表示される。

###①「.xls]拡張子のファイルはできるが、開く際にエラーダイアログが表示される件
.SaveAsコマンドの引数にFileFormat:=xlExcel8を追加することで、保存時に『このファイルは.xlsのファイルですよ』と指定しているので、「ファイルと拡張子が一致しません。」エラーを解消できる。

####ソースコード

Dim wb as workbook
Dim fullPath as String

fullPath = "ファイルの拡張子まで含むフルパス"

wb.SaveAs fileName:= fullPath _
            , FileFormat:=xlExcel8

###②「.xls」ファイルを保存して閉じる場合に互換性チェックのダイアログが表示される件
Application.DisplayAlertsFlaseにすることで解消できる。
 Falseにすることで、ダイアログアラート一式を表示しないようにできる。
 処理が終わった後にTrueに戻すのを忘れないようにすること。

####ソースコード


Dim wb as workbook

・・・省略・・・

'保存/閉じる/初期化
Application.DisplayAlerts = False
wb.Save
wb.Close
Set wb = Nothing
Application.DisplayAlerts = True
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?