Я не уверен, где происходит ваша ошибка, но мне любопытно, почему так много проверок, чтобы удостовериться, что таблица с одной ячейкой пропущена, так как она выдаст ошибку.Есть хороший способ избежать ошибок: поместите " On Error Resume Next " в свой код.Это классический пример того, где вы можете сделать это.Когда он пытается сделать что-то, чего не может из-за размера, он продолжает работать, гарантируя, что все таблицы, даже отдельные ячейки, отформатированы по вашему вкусу.
Некоторые моменты, которые я нахожу ненужными:
- Нет необходимости отслеживать количество таблиц с помощью «n», поскольку вы можете просто использовать свойство tables.count
- Нет необходимости проверять границы, если массив объявлен внутри cound (вызнать границы!)
- Нет причин объявлять типы констант границы в качестве переменных.
Вот более чистая версия кода для вашей справки (плюс я внес некоторые измененияоснованный на личных предпочтениях, в частности на именовании переменных; я чувствую, что нет нужды в венгерской нотации с VBA, особенно учитывая, что код должен быть достаточно коротким, чтобы вы могли найти и увидеть объявления переменных, если это необходимо).