PCメモ

Excelを中心とした業務改善の記録

ExcelにVBAでパスワードをかける

Excelを開いた時にパスワードを入力させ、一致しなかった場合は自動で閉じる。

 

Sub pw()

 

 Dim st As String
 Dim i As Long

 For i = 1 To 3

  On Error GoTo myError

  st = InputBox("パスワードを入力してください") '1234

  If st = 1234 Then
   Exit For
  Else
   MsgBox "パスワードが違います"

   If i = 3 Then
    MsgBox "ブックを閉じます"
    ThisWorkbook.Close savechanges:=True
   End If

  End If

 Next i

 MsgBox "パスワードを認証しました"
 Exit Sub

myError: ThisWorkbook.Close savechanges:=True 'or False

 

End Sub

 

 ThisWorkbookにWorkbook_Openと入力することで、ブックを開いた際に処理を始めることができる。

f:id:abv72:20210814225334p:plain