Как очистить фильтры в ячейке в пределах диапазона, но не в таблице - PullRequest
0 голосов
/ 01 апреля 2019

Я работаю с некоторыми большими файлами Excel, в основном удаляя строки и применяя форматирование, если они соответствуют некоторым критериям. Одна из удаляемых строк содержит фильтр, поэтому при попытке удаления Excel выбрасывает GeneralException. Я знаю о clearFilters() методе Excel.Table ( здесь ). Однако попытка sheet.tables (после загрузки и синхронизации) показывает, что их нет. Из-за этого я работал с диапазонами, но я не могу найти другой метод удаления фильтров из ячейки / диапазона, кроме таблицы.

Есть ли способ очистить фильтры, используя диапазоны? Если это помогает, фильтр всегда находится в ячейке A1.

РЕДАКТИРОВАТЬ: Я не указывал ранее, но я пишу это в React / Typescript, а не VBA.

1 Ответ

2 голосов
/ 01 апреля 2019

Я думаю, вы захотите очистить все фильтры на листе.Если это так, это работает для всего листа:

If Sheets("YourSheetName").FilterMode = True Then
    Sheets("YourSheetName").ShowAllData
End If

Сначала проверяется, установлены ли какие-либо фильтры, потому что в противном случае вы получите ошибку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...