Похожие чаты

У меня таблица с двумя колонками наложен автофильтр, в первой колонке

отмечены значения пон вторник
отфильтровало 4 строки
пон 50
пон 40
вторник 50
вторник 30

накладываю фильтр на второй столбц только 50
показыват 2 строки

пон 50
вторник 50


как программно получить все видимые значения второй колонки без учета включеного отбора второй колонки
тоесть получить массив 50 40 50 30 ?

6 ответов

20 просмотров

Если именно "программно", а под этим обычно понимается макрос. То схема такая. Берем значения фильтра. Отключаете фильтр на столбце, берете таблицу в массив, отбираете в массиве нужные. Включаете фильтр обратно. Выгружаете на лист собранные из массива. Понятно изложил?

Александр-Волокитин Автор вопроса
Roman Rimlynin
Если именно "программно", а под этим обычно понима...

так и планировал, не могу найти как отключить фильтр на столбец ?

Александр Волокитин
так и планировал, не могу найти как отключить филь...

Той же командой, что и включить, только без параметров.

Александр-Волокитин Автор вопроса
Roman Rimlynin
Той же командой, что и включить, только без параме...

критрии наложил пользователь попробую .Range(.AutoFilter.Range.Address).AutoFilter Field:=TargetCell.Column надюсь критерии не изчезнут

Александр-Волокитин Автор вопроса
Roman Rimlynin
Той же командой, что и включить, только без параме...

Set tmpFilterColumn = ActiveSheet.AutoFilter.Filters(TargetCell.Column) If tmpFilterColumn.On Then filterArray(1) = tmpFilterColumn.criteria1 If tmpFilterColumn.Operator <> xlFilterValues Then filterArray(2) = tmpFilterColumn.Operator filterArray(3) = tmpFilterColumn.criteria2 End If End If .Range(.AutoFilter.Range.Address).AutoFilter Field:=TargetCell.Column Set TopCells = .Cells(HeaderRow + 1, TargetCell.Column) Set EndCells = .Cells(ActiveSheet.AutoFilter.Range.Rows.Count + HeaderRow - 1, TargetCell.Column) Set Rng = ActiveSheet.Range(TopCells, EndCells).SpecialCells(xlCellTypeVisible) ReDim arrData(1 To Rng.Cells.Count, 1 To 1) For Each rCell In Rng.Cells If rCell.EntireRow.Hidden = False Then i = i + 1 arrData(i, 1) = rCell.Value End If Next rCell If filterArray(2) <> xlFilterValues Then .Range(.AutoFilter.Range.Address).AutoFilter Field:=TargetCell.Column, criteria1:=filterArray(1), Operator:=filterArray(2), criteria2:=filterArray(3) Else .Range(.AutoFilter.Range.Address).AutoFilter Field:=TargetCell.Column, criteria1:=filterArray(1), Operator:=xlFilterValues End If

Александр-Волокитин Автор вопроса
Александр Волокитин
Set tmpFilterColumn = ActiveSheet.AutoFilter.Filte...

сохранил значения критерием, потом применил их.

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
Hi. Do we have a raid bot? Why nobody doing raids on X? Even RH mentioned this and nobody paying attention...whats the channel for hex memes? If mods cant run raids just insta...
H
31
Подскажите, а есть vault lite или ченить такое?) А то нужен вольт для похода в вольт, но весит он ~500 мб) как-то многовато для парочки запросов ))
Alexandr Orloff
17
блеать, почему так?? где в роутере это исправляется?
Арсен Маньяков 🇦🇲
16
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
🌊 Ocean Nodes Dashboard Update 🚀 Hey, Oceaners! First off, a massive round of applause 👏to all of you for the amazing engagement since we launched Ocean Nodes. In just a few ...
KreigDK | Never DM first🌊
3
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
люди, которые используют flameshot, к вам вопрос. Можно-ли поставить хоткей на создание скриншота? В программе есть отдел "горячие клавиши", но там все для редактирования, скр...
ThunDer104
11
Карта сайта