[[20210126152649]] 『VBAでブックを共有フォルダに保存しようとした時=x(すぬ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VBAでブックを共有フォルダに保存しようとした時、同一名称のブックがあった場合は処理を終了したい』(すぬ)

この書き方ですと、エラーをスルーしてしまうコードになってしまっていると思うのですが、
どのようなコードにすれば処理を終了することができるのか教えていただけますでしょうか。

Sub Rename_Hozon()

    Dim Reference_Date As Date
    Dim Ws01 As Worksheet
    Dim Wb As Workbook

    Set Ws01 = sheets("テンプレート")
    Set Wb = ActiveWorkbook

    Reference_Date = Ws01.Range("B2")
    Name_Y = Year(Reference_Date)

    Application.DisplayAlerts = False
    On Error GoTo ErrLabel
    Wb.SaveAs Filename:="共有フォルダパス" & 2021年用

    Exit Sub
ErrLabel:
        MsgBox "同年のブックは作成済です", vbExclamation

    Application.DisplayAlerts = True

End Sub

< 使用 Excel:Excel2010、使用 OS:Windows10 >


 SaveAsメソッドでは
 Application.DisplayAlerts = False 
 にしていると、同名のファイルがあってそのまま上書きされて、
 実行時エラーは発生しません。

 Application.DisplayAlerts = Trueにしておくと、
 ほにゃらら〜、置き換えますか? というダイアログがでて、
【いいえ】か【キャンセル】をクリックすると、実行時エラーになります。 
(´・ω・`) 2021/01/26(火) 15:54

 追伸
 なので、同名のファイルがあるときだけ、警告メッセージを出したい場合、
 自前で既存のファイルの有無を調べる必要があります。
 Dir関数が簡単だと思います。
https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/dir-function
(´・ω・`) 2021/01/26(火) 16:02

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.