答え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」をインストールすると、カスタム スタイルを削除するのに非常に便利であることがわかりました。