快捷导航
开启左侧

教你EXCEL转压缩包这种逆天的功能

[复制链接]
Mia酱 发表于 2017-6-16 16:00:17 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
原标题:不为人知的Excel转压缩包逆天功能                                                                                                  

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

55f4803cc137c3bd2ee9bfa415d5d44d.jpg

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


— 01 —Excel与压缩包迷之关系
其实,Office三姐妹在2007(或以上版本)中采用的后缀分别是xlsx、docx、pptx。
52a2a4ad91a6f2b90fb87e2f9e074e83.png
这些格式相比旧版本都多了个X,它们本质上是一个压缩包,这样的好处是存储相同容量的信息将占用较小的空间。
具体到Excel,构成Excel的所有源码文件都在这个压缩包中,因此通过将其后缀更改为.zip或.rar即可提取构成Excel的核心源码文件。
是不是感觉发现了微软的小秘密。
我们将Excel修改后缀为zip,解压出内部文件,看看都有什么?3个文件夹1个xml文件。这里面是什么鬼东西,能怎么玩?让我们一步步扒光它……

3953d83b09f33f3d112c3c2323735ac0.png
小结Excel变成压缩包的原理图。

478cbea7d39ea76163d52d31671500d8.jpg

— 02 —批量导出Excel中的图片

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

将其转化为压缩包,然后解压,你会赫然发现,所有图片已经静静地在那里等你。
Excel等信息存放在解压后的xl文件夹中的media文件夹里,如图是获取Excel中所有图片的步骤。

ce1696ee089f7beaef682f21d9c9d001.png

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


39ddf97458efc82f248d4f4999c67e78.jpg
这就叫做搬起石头砸自己的脚吧。

①首先修改Excel的后缀名为「.zip」或者「.rar」,是压缩文件的格式就行。
注意:Excel会提示你修改后缀名之后会导致文件不可用,不要理它,点击「是」。

b22c251098342d4eab1c066ff8bdc3db.gif

②用压缩软件打开刚才创建的压缩包,从压缩包中\xl\worksheets\路径下找到加密的工作表。
因为我们只有sheet2为加密工作表,所以打开这个工作表即可。
通常,为了防止乱搞,把原始Excel文件搞乱,我建议大家把此文件复制到桌面之后再进行下一步操作。

00245b09421c1e46afe4ef065f76e7ce.gif

③假设你已经将压缩包中的Sheet2复制到桌面了,那么用【记事本】打开它,【Ctrl】+【F】,输入“pro”查找找到加密代码,找到之后将<>中的那一坨连同<>符号一起删掉,然后保存。
<sheetProtection algorithmName="SHA-512" hashValue="0botjAbUl3c8nnRthv/9xqEJw1FA6ErQJGpCGWzty5mQjyr89b11v9ffpnHIJOm3mk9Rv3YgnF10xQ3FEjTbvQ==" saltValue="5wf6E/o5M+RHJTelz8A5hg==" spinCount="100000" sheet="1" objects="1" scenarios="1"/>

a169abedfeca6f29e9908cd00dae2c25.gif

④将桌面的上已经删除密码保护的sheet2直接拖到压缩的文件的\xl\worksheets\路径下,替换到原来的sheet2。

0e069a71c0e1aed3aae420d3a22a77cd.gif

⑤把zip文件改回.xlsx文件,然后大摇大摆去修改工作表吧,因为excel工作表保护密码消失了。

6894ec3b7e431d47edc8715d7ba620e7.gif

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

d7a7f06c03cc06902bce8b60f3d789ca.png

①将Excel文件的扩展名修改为.zip
②双击zip压缩包→xl文件夹,找到workbook.xml文件,并将workbook.xml复制到桌面(注意不要解压压缩文件)。

1d952c4956b0908dddcae55dc8fc0dad.png

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

b322f7e7cd1d4c729e5ae41a72191ee4.jpg

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


118463bbb995b51a4e03d19ba4b55a03.png

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

efe01a1ec1287bdb58c3a6634546ee73.png

— 05 —批量修改批注
通过摸索,星爷发现,Excel转化成压缩包之后,其中xl文件夹是放置Excel中各种元素的地方,比如Excel中插入了图片,在xl文件夹中就会生成一个media文件夹;在Excel单元格中插入了批注,xl文件夹中就会生成一个comments1.xml文件,用来存放批注。
因此,在Excel文件中难以批量操作的“批注”,就可以利用压缩包方法解决。比如批量修改批注。
双击zip压缩文件,双击打开 xl 文件夹,找到名为comments1.xml的文件,将其复制到桌面。


3393326d73d7c8cb6b3b7afd54927026.png

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

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

完成之后保存comments1.xml文件,并将其粘贴回压缩文件包中。
最后zip文件扩展名再改回原来的.xlsx,然后打开此Excel文件,工作表中所有地方的批注都进行了相应的改变。
知道了这个原理之后,我们应该还能解锁更多的玩法,等着你去发现。


·The End·
作者:安伟星,微软Office认证大师,领英中国专栏作者,《玩转职场Excel》图书作者,原创公众号:精进Excel(ID:SeniorExcel)
        
来源:微信公众号 精进excel

网站推荐

回复

使用道具 举报


0关注

1粉丝

339帖子

会员达人更多+
广告位

信息推荐

更多+

最新信息

更多+

关注我们:齐志公益

官方微信

儿童心理云平台

服务热线:

020-83707079

微信号:18520081188(备注来意)

地址:广州市越秀区较场西路东关汛3号三楼

公益合作(投稿):admin@gzqz.org

广州市越秀区齐志社会工作服务中心版权所有-广州公益网(公益020/齐志公益课堂/公益游/齐志社会工作服务中心)    ( 粤ICP备14025298号 )

粤ICP备14025298号 粤公网安备44010402001949