Responder1
Experimente esta pequena macro 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
Isso resolve oConstruídas emcontraPersonalizadoemitir. Observe que executamos o looppara tráspara evitar corromper o índice do loop.
Responder2
Para simplesmente remover tudo sem usar INDEX
, tente o seguinte:
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
Responder3
Todos os itens acima funcionam, mas nossos PCs de trabalho são bastante desatualizados, então a macro continua travando. Por alguma razão, muitos arquivos têm centenas de estilos de células, o que torna os documentos mais lentos.
Minha solução acabou sendo fácil e rápida.
Selecione todas as planilhas da sua pasta de trabalho e copie-as para um novo livro. Isso mantém todos os links e formatos externos e tudo mais, mas os estilos não são copiados.
Salve sua nova pasta de trabalho sobre a antiga (feche a antiga primeiro).
Responder4
A questão dos estilos personalizados também é discutida emhttp://support.microsoft.com/kb/213904
Descobri que instalar a "ferramenta XLStyles" gratuita da MS Store, conforme sugerido no artigo da base de conhecimento, era uma maneira muito conveniente de excluir os estilos personalizados.