![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_03.png?e8efa67)
Excel VBA で困っています。
下記のプログラムで、「名前を付けて保存」→「キャンセル」
を選択した場合のエラーは回避できたのですが、
「名前を付けて保存」→「保存」→「同じ名前のファイルが既に
ありますが置き換えますか?」→「いいえ(またはキャンセル)」
の時にエラーが出てしまいます。
どう直したら良いでしょうか。
よろしくお願いいたします。
Public Sub SaveBook()
Dim myBook As Variant
'「名前を付けて保存」ダイアログ
myBook = Application.GetSaveAsFilename("test.xls", _
"Excelファイル,*.xls", , "Excelブックを保存")
'キャンセル時の処理
If StrConv(myBook, vbUpperCase) = "FALSE" Then Exit Sub
'ブックの保存
ActiveWorkbook.SaveAs Filename:=myBook
End Sub
No.2ベストアンサー
- 回答日時:
いいえ(キャンセル)と選択したが
ワークブックの保存処理を実行し失敗しているようですね。
On Error Resume Next
'ブックの保存
ActiveWorkbook.SaveAs Filename:=myBook
上記のように変更し、エラーを無視すればエラーを回避できます。
No.1
- 回答日時:
On Error ステートメント で制御したり、
Dim myBook As Variant
Dim ret As Long
Do
myBook = Application.GetSaveAsFilename("test.xls", _
"Excelファイル,*.xls", , "Excelブックを保存")
If VarType(myBook) = vbBoolean Then Exit Sub
If Len(Dir(myBook)) = 0 Then
Exit Do
Else
ret = MsgBox("既存ファイルあります。置き換えますか?", vbYesNoCancel)
Select Case ret
Case vbYes: Exit Do
Case vbNo:
Case vbCancel: Exit Sub
End Select
End If
Loop
こんな感じで自前で制御したり、あるいは
Application.Dialogs(xlDialogSaveAs).Show "test.xls"
など、Application任せにしたりとかでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelのマクロコードについて教えてください。 1 2022/03/27 10:47
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/03/25 17:03
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Visual Basic(VBA) Excel-VBAでのファイルの開き方 4 2023/02/14 11:01
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/13 08:41
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/22 08:53
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Visual Basic(VBA) マクロVBA 1シートをまとめる 閉じ方 初心者 SOS! 1 2022/06/17 14:54
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel VBAでほかのアプリケーシ...
-
意味不明のタグが挿入されてい...
-
読み取り専用ファイルを上書き...
-
エクセルで「名前を付けて保存...
-
VBAで、強制保存してブックを閉...
-
Wordpress ダウンロードができ...
-
Pivot table で集計されたデー...
-
返信機能つき掲示板
-
VBScriptで日本語が変です
-
EclipseでJavaScriptファイルの...
-
html 保存できない
-
ファイルのダウンロード保存先...
-
コマンドプロンプトでデスクト...
-
vbaでIEの名前を付けて保存(A)...
-
「名前をつけてファイルを保存...
-
teratarmでコマンド入力すると...
-
onedriveで同期解除をしたら、...
-
パワーポイントのデータを誤っ...
-
vlan internal allocation poli...
-
Edgeでダウンロード状況表示画...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
読み取り専用ファイルを上書き...
-
Excel VBAでほかのアプリケーシ...
-
コマンドプロンプトでデスクト...
-
Excel VBAで作成したマクロをxl...
-
vbaでIEの名前を付けて保存(A)...
-
エクセルVBAについて
-
VBAで、強制保存してブックを閉...
-
ExcelVBAでデスクトップのPATH...
-
エクセルで「名前を付けて保存...
-
VBA メモ帳の上書き保存がしたい
-
VBScriptで日本語が変です
-
タイトルバーやメニューバーの...
-
Pivot table で集計されたデー...
-
エクセルマクロ PDF出力、CSV出力
-
VBSでHPを保存するにはど...
-
AccessVBAでレポートをPDFで出力
-
htmlから取り込んだ を消...
-
ASPでファイルを保存するダイア...
-
VBScriptでのSaveAsについて
-
CFileDialogで保存したい
おすすめ情報