易布莱特
易布莱特
5月前 · 10 人阅读

星爷要是给你一个压缩文件,然后说这是一个Excel文件,你会怎么想?

Excel文件确实可以通过压缩软件打包进压缩包中,但是把Excel自身变成压缩文件,多数人应该还没有听说过。

— 01 

Excel与压缩包迷之关系

其实,Office三姐妹在2007(或以上版本)中采用的后缀分别是xlsx、docx、pptx。

这些格式相比旧版本都多了个X,它们本质上是一个压缩包,这样的好处是存储相同容量的信息将占用较小的空间。

具体到Excel,构成Excel的所有源码文件都在这个压缩包中,因此通过将其后缀更改为.zip或.rar即可提取构成Excel的核心源码文件。

是不是感觉发现了微软的小秘密。

我们将Excel修改后缀为zip,解压出内部文件,看看都有什么?3个文件夹1个xml文件。

这里面是什么鬼东西,能怎么玩?让我们一步步扒光它……

小结Excel变成压缩包的原理图。

— 02 

批量导出Excel中的图片

如果我们的Excel工作表中有很多图片,比如做的员工通讯录,里面含有每一个员工的头像照片,需要将他们批量导入了,一个一个另存为速度就太慢了。

将其转化为压缩包,然后解压,你会赫然发现,所有图片已经静静地在那里等你。

Excel等信息存放在解压后的xl文件夹中的media文件夹里,如图是获取Excel中所有图片的步骤。

— 03 

破解工作表加密

如图第二张表「销售记录」是使用密码保护的工作表。可是自己设置的密码却忘记了,该怎么办?

这就叫做搬起石头砸自己的脚吧。

①首先修改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工作表保护密码消失了。

— 04 

批量修改工作表名称

一个工作簿中存放了一整年的销售记录表,有一个汇总表以及1-12月的销售明细。现在想把工作表名称中“2008年”字样统一改为“2010年”,同样使用压缩文件的方式可以快速搞定。

①将Excel文件的扩展名修改为.zip

②双击zip压缩包→xl文件夹,找到workbook.xml文件,并将workbook.xml复制到桌面(注意不要解压压缩文件)。

③以记事本的方式打开桌面上的workbook.xml文件,单击菜单命令“编辑”→“替代”,在弹出的“替换”对话框中,“查找内容”文本框输入:2008年,“替换为”文本框输入:2010年,单击“全部替换“按钮,关闭”替换“对话框;

④保存文件,并将其粘贴回压缩文件夹中,会提示“此位置已包含同名文件”,点击复制与替换。

⑤将zip文件扩展名再改回原来的.xlsx,然后打开此Excel文件,发现所有的工作表名称都已经改变了。

— 05 

批量修改批注

通过摸索,星爷发现,Excel转化成压缩包之后,其中xl文件夹是放置Excel中各种元素的地方,比如Excel中插入了图片,在xl文件夹中就会生成一个media文件夹;在Excel单元格中插入了批注,xl文件夹中就会生成一个comments1.xml文件,用来存放批注。

因此,在Excel文件中难以批量操作的“批注”,就可以利用压缩包方法解决。

比如批量修改批注。

双击zip压缩文件,双击打开 xl 文件夹,找到名为comments1.xml的文件,将其复制到桌面。

右键单击comments1.xml文件,在右键菜单中依次单击【打开方式】——【记事本】。在记事本中打开后,所有Excel中批注的内容都在这个文件中了,在这里我们可以方便的使用查找替换进行批量性该,比如:删掉所有批注中的“学费”两字。

如图可以采用替换的方式,将学费替换为空值。

完成之后保存comments1.xml文件,并将其粘贴回压缩文件包中。

最后zip文件扩展名再改回原来的.xlsx,然后打开此Excel文件,工作表中所有地方的批注都进行了相应的改变。

知道了这个原理之后,我们应该还能解锁更多的玩法,等着你去发现。

今日互动

关于Excel与压缩包,你还有哪些玩法?

IOS专用打赏,一种碉堡了的打赏方式

↓↓↓

·The End·



收藏 0
关键词: excel 压缩包 逆天 不为人知 功能
评论