ray88’s diary

お仕事で困ったとき用の自分用の覚書

Excel VBA パスワード付エクセルを開く

※パスワードのかかっていないファイルに対して実行してもエラーにはならない。
■読み取りパスワードを指定して開く
Workbooks.Openメソッドの後に、Password:=”パスワード”と指定すると、読み取りパスワードが設定されたファイルを開くことができます。

Sub openReadPwExcel()
    '開くエクセルファイルを管理する変数
    Dim openExcelFile As Workbook     
    '読み取りパスワードを指定して開く
    Set openExcelFile = Workbooks.Open("C:\エクセル用フォルダ\てすと1.xlsx", Password:="Test")
End Sub

■書き込みパスワードを指定して開く
Workbooks.Openメソッドの後に、WriteResPassword:=”パスワード”と指定すると、書き込みパスワードが設定されたファイルを開くことができます。

Sub openWritePwExcel()
    '開くエクセルファイルを管理する変数
    Dim openExcelFile As Workbook     
    '書き込みパスワードを指定して開く
    Set openExcelFile = Workbooks.Open("C:\エクセル用フォルダ\てすと2.xlsx", WriteResPassword:="Test")
End Sub

■読み取りパスワードと書込みパスワード両方指定して開く

Sub openPwExcel()
    '開くエクセルファイルを管理する変数
    Dim openExcelFile As Workbook
    '読み取りパスワードと書き込みパスワードを指定して開く
    Set openExcelFile = Workbooks.Open("C:\エクセル用フォルダ\てすと2.xlsx", _
                                    Password:="DEF123", WriteResPassword:="Test")
End Sub

ray88.hatenablog.com