すべてのカスタムセルスタイルを削除する 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

上記の方法はすべて機能しますが、私たちの仕事用 PC はかなり古いため、マクロがクラッシュし続けます。何らかの理由で、多くのファイルに何百ものセル スタイルが含まれており、ドキュメントの速度が低下します。

私の解決策は簡単で素早いものであることがわかりました。

ワークブック内のすべてのワークシートを選択し、新しいブックにコピーします。これにより、すべての外部リンクと形式が維持されますが、スタイルはコピーされません。

新しいブックを古いブックの上に保存します (まず古いブックを閉じます)。

答え4

カスタムスタイルの問題については、http://support.microsoft.com/kb/213904

KB 記事で提案されているように、MS ストアから無料の「XLStyles Tool」をインストールすると、カスタム スタイルを削除するのに非常に便利であることがわかりました。

関連情報