※ ChatGPTを利用し、要約された質問です(原文:エクセルマクロ BeforSave機能)
エクセルマクロのBeforSave機能について
このQ&Aのポイント
エクセルマクロのBeforSave機能で上書き保存するとマイクロソフトに報告する旨のエラーメッセージが出るとのこと。
エラー後に報告「する・しない」で自動復帰した後にそのまま上書き保存すると成功するが、少しでも変更を加えると再度同じエラーが発生する。
具体的な原因は不明であり、初めてこの機能を使うため間違いがあるかもしれないとのこと。
ThisWorkbook の Workbook BeforSaveに以下のようにセットして上書き保存すると
マイクロソフトに報告する旨のエラーメッセージが出ます。
自ら初めてこの機能を使うのですが、どこがどう間違っているのでしょうか?
エラー後に報告「する・しない」で自動復帰した後にそのまま上書き保存すると
何もおこらず上書きできますが、少しでも変更を加えると再度同じエラーとなります。
よろしくお願いします。
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim IptA As String, rev As String
IptA = Cells(3, 13).Value
rev = Cells(8, 13).Value
If SaveAsUI = False Then
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:="C:\000\" & IptA & "報告" & rev & ".xls", FileFormat:= _
xlNormal, ReadOnlyRecommended:=False _
, CreateBackup:=False
End If
End Sub
お礼
迅速に回答頂きましてありがとうございます。 なるほど!確かに考えられますね。 ビフォーセイブなので確かに二回セイブする事になりますね。 もう少しいじって確認してみます。
補足
確認できました。 saveをcloseでやってみたところ、エラーなしで閉じましたので saveが原因だったようです。 今までの感覚だと問題ないように感じていたのですが・・・ ありがとうございました!