Доброго времени суток, уважаемые профессионалы!
Нужна помощь в создании формулы для подсчета уникальных значений столбца [Line number] с учетом фильтра. Т.е. чтобы считать уникальные значения при изменении условий фильтра в любом из столбцов. Исходник во вложении. Заранее благодарен
Здравствуйте, Jurass
я бы использовал UDF
Function Unique_Values_Under_Filter&(rng As Range)
'' Author: boa
'' Written: 07.06.2019
' Description: возвращает количество уникальных видимых значений в массиве
Application.Volatile True
Dim col As New Collection
On Error Resume Next
Dim a: For Each a In rng
If a.Rows.Hidden = False And Not IsNull(a) Then col.Add CStr(a.Value), CStr(a.Value)
Next a
Unique_Values_Under_Filter = col.Count
End Function
Большое спасибо!
Для создания данной функции в аналогичных файлах куда необходимо загружать данный код?
да
но можно функцию зашить в надстройку, а надстройку запускать при открытии аналогичных файлов
на сапорте (https://support.office.com/ru-ru/article/%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D0%BA%D0%B8%D1%85-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B9-%D0%B2-excel-2f06c10b-3622-40d6-a1b2-b6748ae8231f) почитайте.
Ещё раз спасибо!
Вариант формулой
=СЧЁТ(1/(ПОИСКПОЗ(Таблица3[Line Number
Номер линии];ЕСЛИ(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(103;ДВССЫЛ("g"&СТРОКА(Таблица3[Ag/Ug])));Таблица3[Line Number
Номер линии]);)=СТРОКА(Таблица3[Ag/Ug])-1))