打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
清除Excel自定义格式方法

  Excel2016版已经修复了复制工作表会复制无关样式。

一、问题

  Excel体积大,原因是定义了许多无用的样式,样式表位于styles.xml。将一个Excel文件复制到另一个文件,会把所有无关的样式全部复制,导致文件体积越来越大。

  新建一个Excel,复制表格时不要采用复制或移动,而且点击左上角全选。点击左上角复制后一般格式完全相同,但是冻结状态和筛选状态就消失。

二、解决办法

办法1

  1、打开VBA编辑器(alt+f11),在代码窗口中输入下列代码:

Sub DelCustomStyles()

Dim st As Style

For Each st In ActiveWorkbook.Styles

If Not st.BuiltIn Then st.Delete

Next

End Sub

  2、关闭VBA编辑器,返回Excel界面。打开“宏”对话框(alt+f8),执行“DelCustomStyles”宏即可一次删除所有自定义单元格样式,而内置的单元格样式会保留。

办法2:删除styles.xml,但是所有格式都会清除。需要重新设置格式

  1. 重命名.xlsx为.zip

  2. 用WinZip打开,进入xl 文件夹

  3. 右键点击styles.xml,选择用记事本打开

  4. 查找<cellstyles,删除条目

  5. 再次搜索/cellstyles>

  6. 保存xml。更新Zip文件,保存。

  7. 重命名zip文件为.xlsx

三、styles.xml文件

  excel 2007中的/xl/styles.xml文件,"cellStyleXfs"和"cellStyles"节点

  CellStyleXfs是在单元格样式中建立的自定义样式。

<cellStyleXfs count="3XXX"> 

         <xf numFmtId="0" fontId="0" fillId="0" borderId="0"/>

         <xf numFmtId="0" fontId="1" fillId="0" borderId="0">

         </xf>

        <xf numFmtId="0" fontId="1" fillId="0" borderId="0">

        </xf>

</cellStyleXfs>

  样式名可以在"cellStyle"节点的"name"属性找到,对应的属性"xfId",是"CellStyleXfs"节点的子节点"xf"的索引,从"0"开始

<cellStyles count="3XXXX"> 

       <cellStyle name="MyStyle" xfId="1"/>

       <cellStyle name="常规" xfId="0" builtinId="0"/>

       <cellStyle name="样式 1" xfId="2"/>

</cellStyles>

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
excel中单元格的使用2
Excel小白讲解Excel3大常用的文件类型
VBA批量删除自定义单元格样式
干货|Excel 自定义页眉和页脚样式
EXCEL套用格式1秒实现隔行上色 自定义表样式实例讲解
比格式刷好用10倍!这个神秘的Excel功能原来是美化表格神器
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服