パスワードの設定されたエクセルファイルをVBAで開こうとすると、パスワードの入力画面が表示されてしまいます。
パスワードもVBAで自動入力し、パスワード入力画面を表示せずにエクセルファイルを開く方法です。「読み取りパスワード」と「書き込みパスワード」2つの指定方法があります。
読み取りパスワードを指定して開く
Workbooks.Openメソッドの後に、Password:=”パスワード”と指定すると、読み取りパスワードが設定されたファイルを開くことができます。
コード
1 2 3 4 5 |
'開くエクセルファイルを管理する変数 Dim openExcelFile As Workbook '読み取りパスワードを指定して開く Set openExcelFile = Workbooks.Open("C:\エクセル用フォルダ\てすと1.xlsx", Password:="Test") |
解説
5行目で読み取りパスワードを指定して、エクセルファイルを開いています。
項目 | 内容 |
---|---|
ファイルの場所 | C:\エクセル用フォルダ |
ファイル名 | てすと1.xlsx |
パスワード | Test |
書き込みパスワードを指定して開く
Workbooks.Openメソッドの後に、WriteResPassword:=”パスワード”と指定すると、書き込みパスワードが設定されたファイルを開くことができます。
コード
1 2 3 4 5 |
'開くエクセルファイルを管理する変数 Dim openExcelFile As Workbook '書き込みパスワードを指定して開く Set openExcelFile = Workbooks.Open("C:\エクセル用フォルダ\てすと2.xlsx", WriteResPassword:="Test") |
解説
5行目で書き込みパスワードを指定して、エクセルファイルを開いています。
項目 | 内容 |
---|---|
ファイルの場所 | C:\エクセル用フォルダ |
ファイル名 | てすと2.xlsx |
パスワード | Test |
逆に、パスワードを設定してエクセルファイルを保存したい場合は、下のページを参考にしてください。

【VBA】パスワードを設定してエクセルファイルを保存する
エクセルファイルにパスワードを設定して保存する場合、パスワードには次の2種類があります。
読み取りパスワード:
パスワードを知らないと中身を見ることもできない
書き込みパスワード:
パスワードを知らないと保存できないが、中身を見...