【Excel】見積書の価格表を載せたシートは顧客に見られたくない!エクセルで特定のシートを非表示にしてパスワードをかけるテク
ブック保護のパスワードが分からなくなっても、強制的に解除することは可能です。
1. Excelのファイルをxlsxで保存する
2. ファイルの拡張子をxlsxからzipに変更する
実はxlsx形式のファイルは、zipファイルの中にxml形式のデータが格納したものです。
3. Explzhなどの解凍ツールを用いて開く
4. xl\workbook.xmlをメモ帳などで編集し「<workbookProtection~/>」を削除
5. zipファイルのxl\workbook.xmlを編集したもので置き換える。
必ず元のzipファイルに対して操作を行い、ファイルを置き換えてください。新規にzipファイルを作成して、拡張子をxlsxに変えても、プロパティ情報などの違いからxlsxファイルをは認識されません。
6. 拡張子をzipからxlsxに戻す
7. Excelでファイルを開く
Excelでファイルを開くときに、ファイルが壊れている旨の警告が表示されますが「はい」を選択して、ファイルを修復してください。これでパスワードが解除された状態になります。
BookやSheetの保護パスワードは、元データを暗号化しているわけではありません。もし暗号化していたら、Excelの式で参照することもできなくなりますからね。パスワードは暗号化されているので元のパスワードは分かりませんが、パスワードを設定するという属性ごと削除してしまえば、パスワードを解除できます。
内容を見たいだけなら「非表示のシート名!A1」といった式を書くだけでも、簡単に内容を確認できます。
顧客に見られても良い情報と、見られて困る情報を混在させる、良い方法というのはありません。仮にデータが暗号化されて保存される使用だったとしても、パスワードが漏洩している可能性だってあります。無駄にリスクを増やすよりも、素直に削除するなり、ExcelならPDF形式にエクスポートするなりといった方法を選びましょう。
PS…
zipファイルとして解凍してしまうテクニックは「複雑な正規表現置換をしたい」といった用途にも使えますので、知ってると便利です。
「ブックの保護を強制的に解除する」への1件のフィードバック