|
ちん さん、furuya さん、こんにちは。
>戻り値については、解答できません。
>
>回避策としては、
>1.保存する前に、ファイルが存在するかチェックし、
> 存在したときは、ファイル削除後に「保存」を開始する。
>2.「いいえ」・「キャンセル」を押すと、必ずエラー処理が発生するので、
> エラー処理で、ファイルを削除後に「保存」を開始する。
ちんさんの1.のようにファイルの存在をチェックし、
コードでメッセージを表示する方法もあります。
'=========================================================
sub test()
Dim savenm As String
savenm = "D:\My Documents\TESTエリア\savetest2.xls"
If chk_上書き(savenm) = True Then
Application.DisplayAlerts = False
' ↑を入れて強制的に上書き
ThisWorkbook.SaveAs savenm
Application.DisplayAlerts = True
End If
End Sub
'=============================================================
Function chk_上書き(flnm As String) As Boolean
chk_上書き = True
If Dir(flnm) <> "" Then
ans = MsgBox(flnm & " は既に存在します。上書きしますか?", vbOKCancel)
If ans = 2 Then
chk_上書き = False
End If
End If
End Function
一例ですが、確認してみて下さい。
|
|