ブックにパスワードを設定して保存終了
作成時に作ったブックのパスワードを、ユーザーに好きなパスワードに変更してもらう時に使うマクロです。

progani


パスワードを設定する方法を説明する為、ここでは、インプットボックスでパスワードを指定していますが、実際にはユーザーフォームでパスワードを見えない状態「*********」のようにしながら設定しています。

Sub CloseTest()

    Dim strMyPass As String
    
    strMyPass = InputBox("新しいパスワードを入力", "パスワード変更")
    
    If strMyPass = "" Then Exit Sub
    
    Application.DisplayAlerts = False
    ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & ThisWorkbook.Name, Password:=strMyPass
    ThisWorkbook.Close savechanges:=False
    Application.DisplayAlerts = True

End Sub

名前を付けて保存 SaveAs にパスワード設定の引数があります。
同じファイル名に保存する場合も、SaveAs を使い、その後 Close しています。
上書き保存のアラートを出さないよう、DisplayAlertsはFalseにし、最後にTrueに戻しています。
一度、名前を付けて保存しているので、Close時は保存せずに終了(savechanges:=False)しています。