Похожие чаты

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

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

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

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


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

6 ответов

27 просмотров

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

Александр-Волокитин Автор вопроса
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...

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

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
@Benzenoid can you tell me the easiest, and safest way to bu.y HEX now?
Živa Žena
20
This is a question from my wife who make a fortune with memes 😂😂 About the Migration and Tokens: 1. How will the old tokens be migrated to the new $LGCYX network? What is th...
🍿 °anton°
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
What is the Dex situation? Agora team started with the Pnetwork for their dex which helped them both with integration. It’s completed but as you can see from the Pnetwork ann...
Ben
1
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Anyone knows where there are some instructions or discort about failed bridge transactions ?
Jochem
21
@lozuk how do I get my phex copies of my ehex from a atomic wallet, to move to my rabby?
Justfrontin 👀
11
Карта сайта