【Office 365用】パスワードのかかったExcelファイルのパスワード一括解除マクロ(要パスワード情報)
クライアントからいただくファイルが毎度Excelにパスワードが掛かっているいて解除が大変なので作成。
古いバージョンのパスワード解除用のマクロはあったけど最近のものがなかったので共有用。
前提:
パスワードは事前に連絡もらっている
ファイルは全て同じフォルダに入っている
フォルダ階層:
解除したいエクセルファイルを入れるフォルダ
┗解除したいエクセルファイルA.xlsx
┗解除したいエクセルファイルB.xlsx
┗解除したいエクセルファイルC.xlsx
以下のコードを解除用マクロ.xlsmとして設定し保存
Private Sub Workbook_Open()
Dim FolderPath As String
Dim FileName As String
Dim wb As Workbook
' フォルダのパスを指定
FolderPath = "***"
' パスワード
PassWord = "***"
' フォルダ内のすべてのエクセルファイルを処理
FileName = Dir(FolderPath & "/*.xlsx")
Do While FileName <> ""
Set wb = Workbooks.Open(FolderPath & "/" & FileName, Password:=PassWord)
wb.Password = ""
wb.Close SaveChanges:=True
FileName = Dir
Loop
Application.Quit
ThisWorkbook.Close
End Sub
フォルダのパスを指定 FolderPath = "***"
パスワード PassWord = "***"
ここだけ入力でOK。
例)デスクトップにunlockというフォルダを作りその中に解除用のExcelファイルを入れている場合
Mac:/Users/ユーザー/Desktop/unlock
Win:C:\Users\ユーザ名\OneDrive\デスクトップ
※Winは未テストです(OneDriveがない場合もあり / カタカナありで動くか不明)できれば、ひらがな・カタカナ含まない場所でやった方が安全。
解除用マクロ.xlsmを実行すると特定のフォルダに入っているファイルをパスワードで開いた後、パスワードを無効化し上書き保存。
めでたくパスワードがないエクセルファイルの出来上がり🤩