2010excel批量清除自定义单元格样式

2022-03-20 科技 258阅读

问题解决方法分为两步:第一步使用宏删除正常的自定义样式;第二步使用特殊方法删除僵尸样式。亲测可以完美解决。(楼主遇到到方法无效有可能是因为Excel没有打开宏功能,因为Excel默认禁用宏,打开宏功能方法如下:选项,信任中心,信任中心设置,宏设置,勾选启用所有宏选项和信任对VBA工程对象模型的访问选项。如果宏打开了还会卡死,则是因为代码里面缺少了一行跳过僵尸样式的代码,所以遇到僵尸样式会卡死,用我下面分享的代码即可。)

第一步:在宏里面运行以下程序,绝大部分自定义样式可以批量删除。

SubStyleKill()

DimstyTAsStyle

OnErrorResumeNext

ForEachstyTInActiveWorkbook.Styles

IfNotstyT.BuiltInThen

styT.Delete

EndIf

NextstyT

EndSub

第二步:删除僵尸自定义样式

左边是英文原文答案,右边是百度翻译的,如果中文看不懂,可参考左边英文。在这里我补充几点实践中的经验:首先,在把Excel文件后缀修改成为.zip之前,把僵尸样式的名称先复制粘贴到Word中。这样在使用记事本打开的.xml文件中方便查找删除。第二,在.zip文件中很可能不能用记事本打开.xml文件,这个时候可以把.xml文件拖到桌面,用记事本打开,然后查找到刚才粘贴出来的僵尸样式的名称,把包含这个名称的括号里面的内容都删掉,挨个删完之后,再把这个文件拖回到.zip文件里面就好啦。

辛苦总结+手打,记得点赞哦!

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com