
マクロを実行した時にエラーが出て実行が出来ません、解決方法を教えてください。
マクロ
Sub 電子提出()
Application.DisplayAlerts = False
On Error Resume Next
Worksheets(Array("記載方法")).Delete
Worksheets(Array("提出図書(参考)")).Delete
Worksheets(Array("消防の指摘一覧(参考資料)")).Delete
Worksheets(Array("Web申請手順(参考)")).Delete
Worksheets(Array("申請種別")).Delete
Worksheets("提出シート").Activate
Dim rng As Range
Set rng = Selection.Cells
Range("B1", "H47").Select
myBook = ThisWorkbook.Path
ActiveWorkbook.SaveAs Filename:=myBook & "\" & Range("P1").Value & "(提出用).xlsx", FileFormat:=xlOpenXMLWorkbook
rng.Select
Sheets("提出シート").Range("D3,D4,D7").ClearContents
Range("D7").Select
ActiveWorkbook.SaveAs Filename:=myBook & "\" & Range("P1").Value, Arg2:=xlOpenXMLWorkbookMacroEnabled
Application.Quit
With ThisWorkbook
.Saved = True
Application.DisplayAlerts = True
.Close False
End With
Sheets("提出シート").Shapes("新築FD").Visible = False '
Sheets("提出シート").Shapes("計変FD").Visible = False '
Sheets("提出シート").Shapes("増築FD").Visible = False '
Sheets("提出シート").Shapes("担当者").Visible = False '
Range("D7").Select
End Sub
があります。
マクロを実行すると、作業フォルダ内に指定セル値をファイル名としてマクロ有効ブック方式と一般のExcel方式の2つのファイルで保存出来るようになっております。
しかし、
「ActiveWorkbook.SaveAs Filename:=myBook & "\" & Range("P1").Value, Arg2:=xlOpenXMLWorkbookMacroEnabled」の「Arg2」の部分が変色しマクロが実行できません。
解決方法を教えてください。
よろしくお願いいたします。

No.2ベストアンサー
- 回答日時:
こんにちは
ActiveWorkbook.SaveAsメソッドのFileFormat:=パラメータと
Application.Dialogs(xlDialogSaveAs)で使用するダイアログに対する引数
Arg2:= は違います
FileFormatをマクロ有効ブックにしたいのだと思いますので
ActiveWorkbook.SaveAs Filename:=myBook & "\" & Range("P1").Value, FileFormat:=xlOpenXMLWorkbookMacroEnabled
で良いかと
xlOpenXMLWorkbookMacroEnabled は値 52にしても機能します
前にも同じような回答をいたしましたが
ActiveWorkbook.SaveAsメソッド
https://learn.microsoft.com/ja-jp/office/vba/api …
XlFileFormat 列挙体 (Excel)
https://learn.microsoft.com/ja-jp/office/vba/api …
【Excel VBA】xlDialogSaveAsのArg引数の使い方
https://watapipi.com/saveas_arg/
No.1
- 回答日時:
エラーが発生している原因は、 Arg2:=xlOpenXMLWorkbookMacroEnabledの部分にあると思われます。
これは、保存するファイルの形式を指定するための引数であり、Excel 2007以降で使用可能なマクロ有効なExcelブックの形式を表す定数です。ただし、これを正常に使用するには、定数のプレフィックス xl を使用する必要があります。つまり、xlOpenXMLWorkbookMacroEnabledの代わりに、xlOpenXMLWorkbookMacroEnabledWorkbookを使用する必要があります。
以下は修正されたコードです。
ActiveWorkbook.SaveAs Filename:=myBook & "\" & Range("P1").Value, FileFormat:=xlOpenXMLWorkbookMacroEnabledWorkbook
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/12 10:10
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/06/01 14:45
- Excel(エクセル) ワードのマクロについて教えてください。 1 2023/03/11 13:50
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/06/02 08:44
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/04 09:39
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/11 12:55
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/02/07 09:58
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/13 08:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロの連続印刷が突然不可能...
-
特定のPCだけ動作しないVBAマク...
-
Excel マクロ VBA プロシー...
-
一つのTeratermのマクロで複数...
-
エクセルで特定の列が0表示の場...
-
ExcelのVBA。public変数の値が...
-
Excel_マクロ_現在開いているシ...
-
Excel・Word リサーチ機能を無...
-
エクセルマクロでワードの一ペ...
-
エクセルに張り付けた写真のフ...
-
マクロ実行時エラー
-
メッセージボックスのOKボタ...
-
Excelのセル値に基づいて図形の...
-
ダブルクリックで貼り付けた画...
-
エクセルで縦に並んだデータを...
-
wordを起動した際に特定のペー...
-
Excel 改ページのVBAうまくい...
-
TERA TERMを隠す方法
-
マクロ実行時、ユーザーフォー...
-
VBSからエクセルのマクロを起動...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
特定のPCだけ動作しないVBAマク...
-
Excel・Word リサーチ機能を無...
-
エクセルで特定の列が0表示の場...
-
Excel_マクロ_現在開いているシ...
-
一つのTeratermのマクロで複数...
-
メッセージボックスのOKボタ...
-
Excel マクロ VBA プロシー...
-
ExcelのVBA。public変数の値が...
-
エクセルで別のセルにあるふり...
-
エクセルに張り付けた写真のフ...
-
Excel マクロでShearePoint先の...
-
TERA TERMを隠す方法
-
Excelのセル値に基づいて図形の...
-
Excel VBAからAccessマクロを実...
-
ExcelVBAでPDFを閉じるソース
-
マクロ実行時、ユーザーフォー...
-
オートフィルターとExcelマクロ...
-
wordを起動した際に特定のペー...
-
特定文字のある行の前に空白行...
-
エクセルで縦に並んだデータを...
おすすめ情報