删除所有自定义单元格样式 EXCEL

删除所有自定义单元格样式 EXCEL

是否可以删除工作簿中的所有自定义/创建的单元格样式?只保留默认样式。

无需逐一删除

在此处输入图片描述

答案1

尝试这个小型 VBA 宏:

Sub StyleKiller()
    Dim N As Long, i As Long

    With ActiveWorkbook
        N = .Styles.Count
        For i = N To 1 Step -1
            If Not .Styles(i).BuiltIn Then .Styles(i).Delete
        Next i
    End With
End Sub

这解决了内置对比风俗问题。注意我们运行循环向后以避免破坏循环索引。

答案2

要简单地删除所有内容而不使用INDEX,请尝试以下操作:

Sub StyleKiller()
    Dim st As Style
    On Error Resume Next
    For Each st In ActiveWorkbook.Styles
      If Not st.BuiltIn Then
        st.Delete
      End If
    Next
    On Error GoTo 0
End Sub

答案3

以上所有方法都有效,但我们的工作电脑太旧了,所以宏总是崩溃。由于某种原因,很多文件有数百种单元格样式,这会降低文档的速度。

我的解决方案简单又快捷。

选择工作簿中的所有工作表并将其复制到新工作簿中。这样可以保留所有外部链接和格式,但样式不会复制。

将新的工作簿保存到旧工作簿上(先关闭旧工作簿)。

答案4

自定义样式的问题也讨论了http://support.microsoft.com/kb/213904

我发现按照 KB 文章中的建议从 MS Store 安装免费的“XLStyles Tool”是删除自定义样式的一种非常方便的方法。

相关内容