Функция Excel определяет видимость ячейки
в условном форматировании я хочу определить, скрыта или видна строка над текущей ячейкой. Как я могу определить, видна ли ячейка или нет?
есть ли способ сделать это без временного столбца, который должен быть оставлен видно, когда отображается строка?
избежать XY задача, что я хочу сделать, это иметь столбец, который является категорией для строки. Первая видимая строка с определенной категорией должна иметь другой стиль; последующие строки с той же категорией немного отличаются. В ASCII:
если мой фильтр скрывает строку с dddd тогда я хочу строку с eeee иметь +BBB+ стиль вместо этого.
6 ответов
вместо промежуточного итога, используя сумму в другом столбце, вы можете использовать промежуточный итог, используя counta , чтобы увидеть, если (известный-непустой) ячейка скрыта или нет. Например, если столбец A обычно отображается (если строка не скрыта)
вы можете поместить эту формулу в столбец, который может быть скрыт, и он все равно будет работать.
в условном форматировании, то, вы можете просто использовать: = SUBTOTAL(103,$A2)=1 , чтобы определить, видна ли строка.
в качестве дополнения к ответу Phrogz, если вам нужно проверить, является ли ячейка в колонки скрыто, попробуйте выполнить одно из следующих действий,
это обновление автоматически, как только столбец скрыт.
эта формула не будет обновляться автоматически, и вы должны были бы направить Excel «рассчитать сейчас», выбрав опцию меню или нажимая «F9».
это похоже на подход Гари студента. Определите следующую функцию VBA:
посмотреть как добавить VBA в MS Office? если тебе нужна помощь с этим. Теперь вы можете использовать MyRowHidden(cell) чтобы проверить, содержит ли строка cell скрыт.
способ, который я придумал для решения проблемы, использует вспомогательный столбец, но вы можете скрыть его. Предполагая, что ваши данные начинаются в строке 2 , С категориями в графе A , введите
в ячейке H2 и перетащите вниз. Эта формула принимает значение TRUE, если
затем просто используйте Условное форматирование, чтобы выделить ячейку A2 if =H2 — это правда.
Да, я традиционалист, я до сих пор считаю Плутон планетой. Здесь он снова с простыми пронумерованными строками (2, 3, 5, 7, 11, и 13) скрытые:
, чтобы определить, является ли строка над активной ячейкой скрытый выполните этот макрос:
этот поток немного устарел, но в случае, если он кому-то полезен, вот способ условно форматировать дубликаты в отфильтрованной таблице без использования VBA.
сделать еще один столбец и поместить в него формулу вида
поместите в обычное Дублированное Условное форматирование столбец, который вы хотите проверить.
Я создал новый столбец C (и спрятал оригинал (столбец B)). В новой колонке я использовал формулу =SUBTOTAL (9, B2) Которая суммирует одну строку, которая вас интересует. Затем я скопировал все строки!
теперь, когда вы фильтр с помощью расширенного фильтра. Все значения в этом столбце равны нулю, если они не видны (не отфильтрованы).
тогда normal =SUMIF () работает как чемпион. Просто не случайно использовать скрытые столбец для суммирования по горизонтали. Суммируйте по только что созданному столбцу SUBTOTAL ().
Суммировать, если ячейка содержит определенный текст с использованием подстановочных знаков — Excel и Google Таблицы
Макросы Excel прекрасно справляются с форматированием ячеек на рабочих листах. Кроме того, делают это быстро и в полностью автоматическом режиме. Воспользуемся этими преимуществами и для решения данной задачи напишем свой код VBA-макроса. Он поможет нам быстро и безопасно сбрасывать форматы на исходный предварительно заданный в шаблоне главной таблицы.