見出し画像

【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を実行すると特定のフォルダに入っているファイルをパスワードで開いた後、パスワードを無効化し上書き保存。

めでたくパスワードがないエクセルファイルの出来上がり🤩


この記事が気に入ったらサポートをしてみませんか?