![Удалить ВСЕ пользовательские стили ячеек EXCEL](https://rvso.com/image/1552408/%D0%A3%D0%B4%D0%B0%D0%BB%D0%B8%D1%82%D1%8C%20%D0%92%D0%A1%D0%95%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D0%BA%D0%B8%D0%B5%20%D1%81%D1%82%D0%B8%D0%BB%D0%B8%20%D1%8F%D1%87%D0%B5%D0%B5%D0%BA%20EXCEL.png)
решение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
Я обнаружил, что установка бесплатного инструмента «XLStyles Tool» из Microsoft Store, как предлагается в статье базы знаний, является очень удобным способом удаления пользовательских стилей.