不為人知的Excel轉壓縮包逆天功能

圖/文:安偉星 來源 | 精進Excel

今天講的幾個技巧,如果你都用過,算我雙流氓!

星爺要是給你一個壓縮文件,然後說這是一個Excel文件,你會怎麼想?

Excel文件確實可以通過壓縮軟體打包進壓縮包中,但是把Excel自身變成壓縮文件,多數人應該還沒有聽說過。

001 Excel與壓縮包迷之關係

其實,Office三姐妹在2007(或以上版本)中採用的後綴分別是xlsx、docx、pptx。

這些格式相比舊版本都多了個X,它們本質上是一個壓縮包,這樣的好處是存儲相同容量的信息將佔用較小的空間。

具體到Excel,構成Excel的所有源碼文件都在這個壓縮包中,因此通過將其後綴更改為.zip或.rar即可提取構成Excel的核心源碼文件。

是不是感覺發現了微軟的小秘密。

我們將Excel修改後綴為zip,解壓出內部文件,看看都有什麼?

3個文件夾和1個xml文件。

這裡面是什麼鬼東西,能怎麼玩?讓我們一步步扒光它……

小結Excel變成壓縮包的原理圖。

002 批量導出Excel中的圖片

如果我們的Excel工作表中有很多圖片,比如做的員工通訊錄,裡面含有每一個員工的頭像照片,需要將他們批量導入了,一個一個另存為速度就太慢了。

將其轉化為壓縮包,然後解壓,你會赫然發現,所有圖片已經靜靜地在那裡等你。

Excel等信息存放在解壓後的xl文件夾中的media文件夾里,如圖是獲取Excel中所有圖片的步驟。

003 破解工作表加密

如圖第二張表「銷售記錄」是使用密碼保護的工作表。可是自己設置的密碼卻忘記了,該怎麼辦?

這就叫做搬起石頭砸自己的腳吧。

①首先修改Excel的後綴名為「.zip」或者「.rar」,是壓縮文件的格式就行。

注意:Excel會提示你修改後綴名之後會導致文件不可用,不要理它,點擊「是」。

②用壓縮軟體打開剛才創建的壓縮包,從壓縮包中xlworksheets路徑下找到加密的工作表。因為我們只有sheet2為加密工作表,所以打開這個工作表即可。

通常,為了防止亂搞,把原始Excel文件搞亂,我建議大家把此文件複製到桌面之後再進行下一步操作。

③假設你已經將壓縮包中的Sheet2複製到桌面了,那麼用【記事本】打開它,【Ctrl】+【F】,輸入「pro」查找找到加密代碼,找到之後將<>中的那一坨連同<>符號一起刪掉,然後保存。

<sheetProtection algorithmName="SHA-512" hashValue="0botjAbUl3c8nnRthv/9xqEJw1FA6ErQJGpCGWzty5mQjyr89b11v9ffpnHIJOm3mk9Rv3YgnF10xQ3FEjTbvQ==" saltValue="5wf6E/o5M+RHJTelz8A5hg==" spinCount="100000" sheet="1" objects="1" scenarios="1"/>

④將桌面的上已經刪除密碼保護的sheet2直接拖到壓縮的文件的xlworksheets路徑下,替換到原來的sheet2。

⑤把zip文件改回.xlsx文件,然後大搖大擺去修改工作表吧,因為excel工作表保護密碼消失了。

004 批量修改工作表名稱

一個工作簿中存放了一整年的銷售記錄表,有一個匯總表以及1-12月的銷售明細。現在想把工作表名稱中「2008年」字樣統一改為「2010年」,同樣使用壓縮文件的方式可以快速搞定。

①將Excel文件的擴展名修改為.zip

②雙擊zip壓縮包→xl文件夾,找到workbook.xml文件,並將workbook.xml複製到桌面(注意不要解壓壓縮文件)。

③以記事本的方式打開桌面上的workbook.xml文件,單擊菜單命令「編輯」→「替代」,在彈出的「替換」對話框中,「查找內容」文本框輸入:2008年,「替換為」文本框輸入:2010年,單擊「全部替換「按鈕,關閉」替換「對話框;

④保存文件,並將其粘貼回壓縮文件夾中,會提示「此位置已包含同名文件」,點擊複製與替換。

⑤將zip文件擴展名再改回原來的.xlsx,然後打開此Excel文件,發現所有的工作表名稱都已經改變了。

005 批量修改批註

通過摸索,星爺發現,Excel轉化成壓縮包之後,其中xl文件夾是放置Excel中各種元素的地方,比如Excel中插入了圖片,在xl文件夾中就會生成一個media文件夾;在Excel單元格中插入了批註,xl文件夾中就會生成一個comments1.xml文件,用來存放批註。

因此,在Excel文件中難以批量操作的「批註」,就可以利用壓縮包方法解決。

比如批量修改批註。

雙擊zip壓縮文件,雙擊打開 xl 文件夾,找到名為comments1.xml的文件,將其複製到桌面。

右鍵單擊comments1.xml文件,在右鍵菜單中依次單擊【打開方式】——【記事本】。在記事本中打開後,所有Excel中批註的內容都在這個文件中了,在這裡我們可以方便的使用查找替換進行批量性該,比如:刪掉所有批註中的「學費」兩字。

如圖可以採用替換的方式,將學費替換為空值。

完成之後保存comments1.xml文件,並將其粘貼回壓縮文件包中。

最後zip文件擴展名再改回原來的.xlsx,然後打開此Excel文件,工作表中所有地方的批註都進行了相應的改變。

知道了這個原理之後,我們應該還能解鎖更多的玩法,等著你去發現。

本文首發於微信公眾號:精進Excel(ID:SeniorExcel),作者:安偉星,微軟Office認證大師,Excel培訓師,《競爭力:玩轉職場Excel,從此不加班》圖書作者。

weixin.qq.com/r/Kzn64lr (二維碼自動識別)


推薦閱讀:

PQ補充說明
如何將「2小時47分49秒」轉換為多少秒?
在Power Pivot中解決銷售人員部門調動的關聯問題
《Excel圖表如何做到一圖勝千言》課件分享

TAG:MicrosoftOffice | MicrosoftExcel | 职场 |