Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

20 Апрель 2021, 22:12 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Доступно и просто о работе в офисных пакетах
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: [Решено] Calc: Как удалить расширенный фильтр?  (Прочитано 1605 раз)
0 Пользователей и 1 Гость смотрят эту тему.
eeigor
Форумчанин
***
Offline Offline

Пол: Мужской
Сообщений: 514



« Ответ #56901: 26 Декабрь 2020, 19:16 »

На листе будут видны все строки, но в заголовке фильтра так и останутся "птички" в 1,3,5. На мой взгляд, это баг, о котором следует сообщить.
Да, это очевидно.
Значит, пока делаем отмену фильтрации только через команду диспетчера.
Но решение через API-методы мы ждем от гуру нашего форума.
В моем ответе #3 есть ссылка на форум Excel. Это хороший и нужный пример, и хотелось бы воспроизвести его в LO Calc. Кода получается значительно больше...

А пример снятия фильтра на скриншоте ниже. При этом после выполнения кода в ответе #1 все строки появились.

А код, который в Excel работал с AdvancedFilter был такой

Код:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A2:L5")) Is Nothing Then
        'On Error Resume Next
        
        Application.ScreenUpdating = False
        If ActiveSheet.FilterMode Then
            ActiveSheet.ShowAllData
        End If
        
        Range("База_данных[#All]").AdvancedFilter Action:=xlFilterInPlace _
         , CriteriaRange:=Range("Условия").CurrentRegion  'Action:=xlFilterCopy

        ActiveWindow.ScrollRow = 10
        Application.ScreenUpdating = True
    End If
End Sub

В Excel это вообще была единственная возможность соединить условия фильтра оператором "ИЛИ". В LO Calc, как я вижу, стандартный фильтр тоже позволяет соединить условия через оператор "ИЛИ".
Смысл затеи в том, что при частом использовании постоянно лезть в меню неудобно. Фильтр должен быть "живым", под рукой...
Функцию CurrentRegion() пришлось реализовать, пользователь может заполнить подряд несколько строк с условиями.


* Bug with removeFilter.png (46.71 Кб, 366x489 - просмотрено 13 раз.)

* Снимок экрана от 2020-12-26 19-19-35.png (5.84 Кб, 257x171 - просмотрено 8 раз.)
* Без имени 2.ods (9.14 Кб - загружено 5 раз.)
« Последнее редактирование: 26 Декабрь 2020, 19:55 от eeigor » Записан

Ubuntu 18.04 LTS • LO 7.1.1.2 Community
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!