例文を使って繰り返し業務を時短

【マクロ・VBA】PASSを設定してアクティブシートを名前をつけて保存 

エクセル、マクロ、VBAでパスワードを設定して名前を付けて保存する VBA

PASSを設定してアクティブシートを名前をつけて保存

Part1

Sub アクティブシートのみ名前をつけて保存_pass設定()
        
ThisWorkbook.ActiveSheet.Copy
A = ThisWorkbook.path & "\" & "保存_" & VBA.Format(Now, "yyyymmdd " & "hh-mm-ss")
ActiveWorkbook.SaveAs FileName:=A, Password:="abcd1234", WriteResPassword:="ABC123"
    
Application.CutCopyMode = False
ActiveWorkbook.Close

MsgBox "完了"
End Sub
  • Password:=”abcd1234″
    ⇒読み取りパスワードを設定
  • WriteResPassword:=”ABC123″

*パスワードは15文字まで設定が可能

Part2

Sub アクティブシートのみ名前をつけて保存_パスワード付き()

    Dim fileName As String
    fileName = ThisWorkbook.Path & "\" & "保存_" & Format(Now, "yyyymmdd_hh-mm-ss") & ".xlsx"
    
    ' パスワードの設定
    Dim password As String
    password = "mypassword"
    
    ' ワークブックの保存
    ThisWorkbook.ActiveSheet.SaveAs fileName:=fileName, Password:=password
    
    MsgBox "保存しました。"
    
End Sub

アクティブシートをpass設定を解除して名前をつけて保存

Sub アクティブシート名前をつけて保存_Pass解除()
ThisWorkbook.ActiveSheet.Copy
A = ThisWorkbook.path & "\" & "保存_" & VBA.Format(Now, "yyyymmdd " & "hh-mm-ss")
ActiveWorkbook.SaveAs FileName:=A, Password:="", WriteResPassword:=""
    
Application.CutCopyMode = False
ActiveWorkbook.Close

MsgBox "完了"
End Sub
  • Password:=””, WriteResPassword:=””
    ⇒パスワードに何も入力しないことで解除が可能

コメント

タイトルとURLをコピーしました