If cell is visible excel

In some – admittedly rare – cases you might want to check if a cell is visible in Excel. Visible means that neither the row or column is hidden nor the row or column is grouped and collapsed. In this article, you can find three method for this.

Example and goal

Let’s take a look at a simple example: We want to know with an Excel formula, if cell C5 is currently visible or not.

Example: Goal is to check with an Excel function if cell C5 is currently visible.
Example: Goal is to check with an Excel function if cell C5 is currently visible.

If cell C5 is visible, we want to return TRUE or FALSE if it is hidden. Hidden means that

  • that the row or column is hidden or,
  • that the row or column is grouped and collapsed.

Method 1: Use the SUBTOTAL function

Excel doesn’t have a direct function to check if a cell is visible or not. But there is a workaround – that comes with some restrictions.

As you can see, the function is not too long. You just have to replace C5 with your cell reference:

=IF(SUBTOTAL(103,C5)=1,TRUE,FALSE)

Explanation: The SUBTOTAL function returns the number of cells that are visible and not empty. The IF function around helps to return the correct values TRUE or FALSE. You can – of course – also return other values.

And this is already one of the major restrictions: If the cell is empty (but visible) the formula also returns FALSE.

The following extension catches this error but does not solve it entirely:

=IF(C5="","Cell empty, check not possible",IF(SUBTOTAL(103,C5)=1,TRUE,FALSE))

The second restriction is that it only works if the row is hidden. It does not regard columns. So, if the column is hidden (or grouped and collapsed), the function still returns TRUE.

Method 2: VBA Macro to check if a cell is visible

The second method uses a short VBA macro. Just copy and paste the following code into a new VBA module (here is are the steps for that).

Function ProfessorExcelCellIsVisible(cell As Range)
    On Error Resume Next
    Application.Volatile

    Dim visible As Boolean
    visible = True
    
    If cell.EntireColumn.Hidden = True Then visible = False
    
    If cell.EntireRow.Hidden = True Then visible = False

    ProfessorExcelCellIsVisible = visible

End Function

In your Excel file, you can now use this function:

=ProfessorExcelCellIsVisible(C5)

Do you want to boost your productivity in Excel?

Get the Professor Excel ribbon!

Add more than 120 great features to Excel!


Method 3: Use an Excel add-in to check if a cell is visible

The third method is probably the most convenient one: Quickly install Professor Excel Tools, our Excel add-in with more than 120 features, and use the built-in function. You don’t even have to buy a license because the built-in Excel function are free to use. Sounds great, right?

Use Professor Excel Tools to check if a cell is visible or hidden.

Use Professor Excel Tools to check if a cell is visible or hidden.

So, how does it work? After you have installed Professor Excel Tools (you will see a new ribbon called “Professor Excel”), just type the following function into an Excel cell:

=PROFEXIsVisible(C5)

Professor Excel Tools Box

This function is included in our Excel Add-In ‘Professor Excel Tools’

(No sign-up, download starts directly)


Download

Please feel free to download all the examples from above in this Excel file.

Image by Kevinsphotos from Pixabay

Henrik Schiffner is a freelance business consultant and software developer. He lives and works in Hamburg, Germany. Besides being an Excel enthusiast he loves photography and sports.

In conditional formatting I want to detect if the row above the current cell is hidden or visible. How can I detect if a cell is visible or not?

The only hack I can think of is:

  1. Create a column with all 1 values.
  2. Use a formula like subtotal(109,c2:c2)=1 (i.e. just on the cell I want to check) to determine if it’s visible or hidden.

Is there a way do do this without a temporary column that has to be left visible when the row is shown?


To avoid an XY problem, what I want to do is have a column that is the category for the row. The first VISIBLE row with a particular category should have a different style; later rows with the same category are slightly different. In ASCII:

cat.   item
+AAA+  aaaa
(AAA)  bbbb
(AAA)  cccc
+BBB+  dddd
(BBB)  eeee
(BBB)  ffff

If my filter hides the row with dddd then I want the row with eeee to have the +BBB+ styling instead.

Community's user avatar

asked Mar 3, 2015 at 21:08

Phrogz's user avatar

Instead of subtotal using a sum on another column, you can use subtotal using counta to see if a (known-non-blank) cell is hidden or not. For example, if column A will normally be visible (unless the row is hidden)

= IF( SUBTOTAL(103,A2)=1, "VISIBLE", "HIDDEN (or blank)" )

You can put this formula in a column that may be hidden, and it will still work.

In conditional formatting, then, you can just use: = SUBTOTAL(103,$A2)=1 to determine if the row is visible.

answered Mar 3, 2015 at 22:09

Phrogz's user avatar

PhrogzPhrogz

1,0102 gold badges13 silver badges28 bronze badges

1

As an addendum to Phrogz’s answer, if you need to check whether a cell in a column is hidden, try either of the following,

Conditional Formatting

=CELL("width",TargetCell)=0

This updates automatically as soon as a column is hidden.

Formula Check

=IF(CELL("width",TargetCell)=0, "Cell is hidden.", "Cell is visible.")

This formula will not update automatically and you would have to direct Excel to «Calculate Now» by choosing the menu option or pressing «F9».

answered Apr 28, 2015 at 2:54

Tom Bombadil's user avatar

1

This is similar to Gary’s Student’s approach.  Define the following VBA function:

Function MyRowHidden(ref As Range)
    MyRowHidden = Rows(ref.Row).Hidden
End Function

See How do I add VBA in MS Office?
if you need help with that.  Now you can use MyRowHidden(cell)
to check whether the row containing cell is hidden.

The way I devised to solve the problem uses a helper column, but you can hide it. 
Assuming that your data begin in Row 2, with the categories in Column A, enter

=OR($A1<>$A2, AND(H1,MyRowHidden(H1)))

into cell H2, and drag down.  This formula evaluates to TRUE if

  • the category in this row (A2)
    is different from the category in the preceding row (A1);
    i.e., this is the first row of a new category, or
  • the previous row should be highlighted, but is hidden.

Then simply use Conditional Formatting to highlight cell A2 if =H2 is true.

Example: raw data:

        full data set

Yeah, I’m a traditionalist; I still count Pluto as a planet. 
Here it is again with the prime numbered rows (2, 3, 5, 7, 11, and 13) hidden:

        filtered data

Of course you’ll have to enable macros in your workbook.

Community's user avatar

answered Mar 4, 2015 at 0:05

G-Man Says 'Reinstate Monica''s user avatar

To detect if the row above the active cell is Hidden, run this macro:

Sub WhatsAboveMe()
Dim r As Range
Set r = Selection
With r
    If .Row = 1 Then
        Exit Sub
    End If
    If .Offset(-1, 0).EntireRow.Hidden = True Then
        MsgBox "the row above is hidden"
    Else
        MsgBox "the row above is visible"
    End If
End With
End Sub

answered Mar 3, 2015 at 21:19

Gary's Student's user avatar

Gary’s StudentGary’s Student

19.2k6 gold badges25 silver badges38 bronze badges

1

This thread’s a little old, but in case it’s helpful to anyone, here is a way to conditionally format duplicates on a filtered table without having to use VBA.

  1. Make a column populated with 1’s

  2. Make another column and put a formula like this in it

    =IF(SUBTOTAL(103, [@ColumnWithOnlyOnesInIt])=1, [@ColumnYouWantToCheckForDuplicates], "")

  3. Put in normal duplicate conditional formatting on the column you want to check.

The formula from step 2 will copy the value from the column you want to check but only when the row is visible. That way, when duplicates are checked for, you only get the ones applicable to the filtered table. I think this may not work for zeros (or «» or whatever you choose as the «else» value in your if statement). So it may be possible to get a line zero value in your list that is highlighted as a duplicate. Other than that I’m having good luck with this method.

Community's user avatar

answered Nov 16, 2017 at 20:14

JFrizz's user avatar

I’d propose to use the following formula (on a range e.g. $A:$A):

=AND(A1=OFFSET(A1;-1;0);SUBTOTAL(103;OFFSET(A1;-1;0))=1)

What that does:

If both

  1. the cell is equal to the one above: A1=OFFSET(A1;-1;0)
  2. the cell above is visible: SUBTOTAL(103;OFFSET(A1;-1;0))=1

then the result is True thus the cell is a duplicate of a visible cell right above and should be e.g. grayed out.

Sidenote: Using the OFFSET function makes the conditional formatting will not break when an additional row is inserted.

answered Nov 18, 2018 at 1:51

Joma's user avatar

JomaJoma

1315 bronze badges

In the conditional formatting in, say, cell A11, use this rule

=AGGREGATE(3,3,A10)=0

Note the rule looks at the row directly above. The 3,3 parameter in AGGREGATE in plain English is

show the COUNTA of visible cells.

When A10 is hidden, the rule is TRUE and then you can set the conditional formatting in A11 on that. By the way, this works only if cell A10 has content.

So that you can copy this formatting down the column, there should be no absolute reference in the row in the rule. No helper column is needed for this approach.

zx485's user avatar

zx485

2,17011 gold badges17 silver badges23 bronze badges

answered Apr 30, 2020 at 19:16

Hillyman's user avatar

Here is the solution I just used:

I Created a new column C (and HID the original (Column B)).
In the new column I used the formula =SUBTOTAL(9,B2)
Which SUMS the ONE row you are interested in.
I then copied it all of the rows!

Now, when you filter using advanced filter. The values are all ZERO in this column unless they are visible (not filtered).

Then, the normal =SUMIF() works like a champ.
Just don’t accidentally use the hidden column to sum across. Sum across the SUBTOTAL() column you just created.

answered Aug 21, 2016 at 2:30

Captain Kirk's user avatar

Содержание

  1. Функция Excel определяет видимость ячейки
  2. 6 ответов
  3. How to Check if Cell Is Visible: Three Different Excel Formulas
  4. Example and goal
  5. Method 1: Use the SUBTOTAL function
  6. Method 2: VBA Macro to check if a cell is visible
  7. Method 3: Use an Excel add-in to check if a cell is visible
  8. Download
  9. 1 comment
  10. Функция Excel определяет, видна ли ячейка
  11. Formula to decide if cell is visible
  12. 3 Answers 3
  13. Linked
  14. Related
  15. Hot Network Questions
  16. Subscribe to RSS
  17. Функция Excel определяет, видна ли ячейка
  18. 7 ответов 7

Функция Excel определяет видимость ячейки

в условном форматировании я хочу определить, скрыта или видна строка над текущей ячейкой. Как я могу определить, видна ли ячейка или нет?

единственный Хак, о котором я могу думать, это:

  1. создать столбец со всеми 1 значения.
  2. используйте формулу вида subtotal(109,c2:c2)=1 (т. е. только на ячейке, которую я хочу проверить), чтобы определить, видна ли она или скрыта.

есть ли способ сделать это без временного столбца, который должен быть оставлен видно, когда отображается строка?

избежать 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 ) отличается от категории в предыдущей строке ( A1 ); т. е. это первая строка новой категории, или
  • предыдущая строка должна быть выделена, но скрыта.

затем просто используйте Условное форматирование, чтобы выделить ячейку A2 if =H2 — это правда.

пример: исходные данные:

Да, я традиционалист, я до сих пор считаю Плутон планетой. Здесь он снова с простыми пронумерованными строками (2, 3, 5, 7, 11, и 13) скрытые:

конечно, вам придется включить макросы в книге.

Источник

How to Check if Cell Is Visible: Three Different Excel Formulas

In some – admittedly rare – cases you might want to check if a cell is visible in Excel. Visible means that neither the row or column is hidden nor the row or column is grouped and collapsed. In this article, you can find three method for this.

Example and goal

Let’s take a look at a simple example: We want to know with an Excel formula, if cell C5 is currently visible or not.

If cell C5 is visible, we want to return TRUE or FALSE if it is hidden. Hidden means that

  • that the row or column is hidden or,
  • that the row or column is grouped and collapsed.

Method 1: Use the SUBTOTAL function

Excel doesn’t have a direct function to check if a cell is visible or not. But there is a workaround – that comes with some restrictions.

As you can see, the function is not too long. You just have to replace C5 with your cell reference:

Explanation: The SUBTOTAL function returns the number of cells that are visible and not empty. The IF function around helps to return the correct values TRUE or FALSE. You can – of course – also return other values.

And this is already one of the major restrictions: If the cell is empty (but visible) the formula also returns FALSE.

The following extension catches this error but does not solve it entirely:

The second restriction is that it only works if the row is hidden. It does not regard columns. So, if the column is hidden (or grouped and collapsed), the function still returns TRUE.

Method 2: VBA Macro to check if a cell is visible

The second method uses a short VBA macro. Just copy and paste the following code into a new VBA module (here is are the steps for that).

In your Excel file, you can now use this function:

Do you want to boost your productivity in Excel?

Get the Professor Excel ribbon!

Add more than 120 great features to Excel!

Method 3: Use an Excel add-in to check if a cell is visible

The third method is probably the most convenient one: Quickly install Professor Excel Tools, our Excel add-in with more than 120 features, and use the built-in function. You don’t even have to buy a license because the built-in Excel function are free to use. Sounds great, right?

Use Professor Excel Tools to check if a cell is visible or hidden.

So, how does it work? After you have installed Professor Excel Tools (you will see a new ribbon called “Professor Excel”), just type the following function into an Excel cell:

This function is included in our Excel Add-In ‘Professor Excel Tools’

(No sign-up, download starts directly)

More than 35,000 users can’t be wrong.

Download

Please feel free to download all the examples from above in this Excel file.

Henrik Schiffner is a freelance business consultant and software developer. He lives and works in Hamburg, Germany. Besides being an Excel enthusiast he loves photography and sports.

Thanks for info but following is not working for hidden column
IF(SUBTOTAL(103,C5)=1,TRUE,FALSE))

Also, would you advise how constant 103 apply to hidden column when MS Help shows following”Function_num Required. The number 1-11 or 101-111 that specifies the function to use for the subtotal. 1-11 includes manually-hidden rows, while 101-111 excludes them; filtered-out cells are always excluded.”

Источник

Функция Excel определяет, видна ли ячейка

В условном форматировании я хочу определить, является ли строка над текущей ячейкой скрытой или видимой. Как я могу определить, видна ли клетка или нет?

Единственный взлом, который я могу придумать:

  1. Создайте столбец со всеми 1 значениями.
  2. Используйте формулу наподобие subtotal(109,c2:c2)=1 (т.е. просто в ячейке, которую я хочу проверить), чтобы определить, является ли она видимой или скрытой.

Есть ли способ сделать это без временного столбца, который должен оставаться видимым, когда отображается строка?

Чтобы избежать проблемы XY , я хочу иметь столбец, который является категорией для строки. Первая строка VISIBLE с определенной категорией должна иметь другой стиль; более поздние строки с той же категорией немного отличаются. В ASCII:

Если мой фильтр скрывает строку с dddd тогда, я хочу, чтобы у строки eeee был +BBB+ стиль.

Вместо промежуточного итога с использованием суммы в другом столбце вы можете использовать промежуточный итог, используя, counta чтобы увидеть, скрыта ли (известная непустая) ячейка или нет. Например, если столбец A будет обычно видимым (если строка не скрыта)

Вы можете поместить эту формулу в столбец, который может быть скрыт, и он все еще будет работать.

В условном форматировании вы можете просто использовать:, = SUBTOTAL(103,$A2)=1 чтобы определить, видима ли строка.

В качестве дополнения к ответу Phrogz, если вам необходимо проверить, не скрыта ли ячейка в столбце , попробуйте выполнить одно из следующих действий:

Условное форматирование

Это обновляется автоматически, как только столбец скрыт.

Проверка формулы

Эта формула не будет обновляться автоматически, и вам придется направить Excel в «Рассчитать сейчас», выбрав пункт меню или нажав «F9».

Это похоже на подход Гэри Студента. Определите следующую функцию VBA:

См. Как добавить VBA в MS Office? если вам нужна помощь с этим. Теперь вы можете использовать, чтобы проверить, скрыта ли содержащая строка . MyRowHidden(cell) cell

Способ, который я придумал для решения проблемы, использует вспомогательный столбец, но вы можете скрыть это. Предполагая, что ваши данные начинаются со строки 2 , с категориями в столбце A , введите

в клетку H2 и перетащите вниз. Эта формула оценивается как ИСТИНА, если

  • категория в этой строке ( A2 ) отличается от категории в предыдущей строке ( A1 ); т. е. это первая строка новой категории, или
  • предыдущая строка должна быть выделена, но скрыта.

Затем просто используйте условное форматирование, чтобы выделить ячейку, A2 если =H2 это правда.

Пример: необработанные данные:

Да, я традиционалист; Я все еще считаю Плутон планетой. Здесь снова скрыты строки с простыми номерами (2, 3, 5, 7, 11 и 13):

Конечно, вам нужно включить макросы в вашей книге.

Источник

Formula to decide if cell is visible

Can I use a formula to determine if a cell is not in a hidden row/column?

I know that there are related formulas like subtotal and aggregate, but I don’t quite understand those. And subtotal only seems to care about filtered row, not about hidden rows in general.

I’m looking for something like:

Is it possible combine formulas that arrive at that functionality?

3 Answers 3

If by subtotal() you refer to this option:

From this post. then that’s your answer. Not being able to use it outside of a table mostly means that your data should be stored in a table, not that there’s a critical limitation of that formula.

I would say — create tables for your data instead. It’s always worth it using tables, whether or not you use VBA. I am yet to encounter a workbook where it wouldn’t be better to use tables instead of raw ranges. Even if it’s a small document, it ends up being faster.

There is no built-in formula for this. However, you can use VBA / write your own function to achieve this.

Then you can type =isvisible(«A1») in a cell to get the result.

If you don’t like the double quotes, here is another way:

Then you can type =isvisible(A1) in a cell to get the result.

Since I spent more time than I want to admit searching far and wide for a non-VBA solution that would work for me (since a macro enabled workbook is not a viable option in this enterprise environment), I wanted to share the below answer I came across so that it can help speed the search for the next poor soul.

The below formula returns a 1 if the referenced cell column is visible, and 0 if it is not. Removing the N() portion of the formula returns a Boolean result (TRUE/FALSE) in lieu of Binary (1/0).

This is where I totally plagiarized this from: Count Visible Columns

Linked

Hot Network Questions

To subscribe to this RSS feed, copy and paste this URL into your RSS reader.

Site design / logo © 2023 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2023.3.17.43323

By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.

Источник

Функция Excel определяет, видна ли ячейка

В условном форматировании я хочу определить, является ли строка над текущей ячейкой скрытой или видимой. Как я могу определить, видна ли клетка или нет?

Единственный взлом, который я могу придумать:

  1. Создайте столбец со всеми 1 значениями.
  2. Используйте формулу наподобие subtotal(109,c2:c2)=1 (т. Е. Просто в ячейке, которую я хочу проверить), чтобы определить, является ли она видимой или скрытой.

Есть ли способ сделать это без временного столбца, который должен оставаться видимым, когда отображается строка?

Чтобы избежать проблемы XY, я хочу иметь столбец, который является категорией для строки. Первая строка VISIBLE с определенной категорией должна иметь другой стиль; более поздние строки с той же категорией немного отличаются. В ASCII:

Если мой фильтр скрывает строку с помощью dddd тогда я хочу, чтобы строка с eeee вместо этого имела стиль +BBB+ .

7 ответов 7

Вместо промежуточного counta с использованием суммы в другом столбце вы можете использовать промежуточный итог с использованием счетчика, чтобы увидеть, скрыта ли (известная непустая ) ячейка или нет. Например, если столбец A обычно будет видимым (если строка не скрыта)

Вы можете поместить эту формулу в столбец, который может быть скрыт, и он все еще будет работать.

В условном форматировании вы можете просто использовать: = SUBTOTAL(103,$A2)=1 чтобы определить, видима ли строка.

В качестве дополнения к ответу Phrogz, если вам нужно проверить, не скрыта ли ячейка в столбце , попробуйте выполнить одно из следующих действий:

Условное форматирование

Это обновляется автоматически, как только столбец скрыт.

Проверка формулы

Эта формула не будет обновляться автоматически, и вам нужно будет указать в Excel «Рассчитать сейчас», выбрав пункт меню или нажав «F9».

Это похоже на подход Гэри Студента. Определите следующую функцию VBA:

См. Как добавить VBA в MS Office? если вам нужна помощь с этим. Теперь вы можете использовать MyRowHidden(cell) чтобы проверить, является ли строка, содержащая cell , скрытой.

Способ, который я придумал для решения проблемы, использует вспомогательный столбец, но вы можете скрыть это. Предполагая, что ваши данные начинаются со строки 2 , с категориями в столбце A введите

в ячейку H2 и перетащите вниз. Эта формула оценивается как ИСТИНА, если

  • категория в этом ряду ( A2 ) отличается от категории в предыдущем ряду ( A1 ); это первая строка новой категории, или
  • предыдущая строка должна быть выделена, но скрыта.

Затем просто используйте условное форматирование, чтобы выделить ячейку A2 если =H2 — true.

Пример: необработанные данные:

Да, я традиционалист; Я все еще считаю Плутон планетой. Здесь снова скрыты строки с простыми номерами (2, 3, 5, 7, 11 и 13):

Конечно, вам нужно включить макросы в вашей книге.

Источник

Can I use a formula to determine if a cell is not in a hidden row/column?

I know that there are related formulas like subtotal and aggregate, but I don’t quite understand those. And subtotal only seems to care about filtered row, not about hidden rows in general.

I’m looking for something like:

=ISVISIBLE(A1)

Is it possible combine formulas that arrive at that functionality?

asked Feb 16, 2015 at 8:34

user1283776's user avatar

user1283776user1283776

18.8k43 gold badges135 silver badges267 bronze badges

3

If by subtotal() you refer to this option:

= IF( SUBTOTAL(103,A2)=1, "VISIBLE", "HIDDEN (or blank)" )

From this post… then that’s your answer. Not being able to use it outside of a table mostly means that your data should be stored in a table, not that there’s a critical limitation of that formula.

I would say — create tables for your data instead. It’s always worth it using tables, whether or not you use VBA. I am yet to encounter a workbook where it wouldn’t be better to use tables instead of raw ranges. Even if it’s a small document, it ends up being faster.

Community's user avatar

answered Jan 13, 2017 at 22:10

logicOnAbstractions's user avatar

There is no built-in formula for this. However, you can use VBA / write your own function to achieve this.

Function isvisible(cellname As String)
    isvisible = Not (Worksheets("Sheet1").Range(cellname).EntireColumn.Hidden Or Worksheets("Sheet1").Range(cellname).EntireRow.Hidden)
End Function

Then you can type =isvisible("A1") in a cell to get the result.

If you don’t like the double quotes, here is another way:

Function isvisible(rng As Range)
    isvisible = Not (rng.EntireColumn.Hidden Or rng.EntireRow.Hidden)
End Function

Then you can type =isvisible(A1) in a cell to get the result.

answered Feb 16, 2015 at 9:31

Pingu's user avatar

1

Since I spent more time than I want to admit searching far and wide for a non-VBA solution that would work for me (since a macro enabled workbook is not a viable option in this enterprise environment), I wanted to share the below answer I came across so that it can help speed the search for the next poor soul.

The below formula returns a 1 if the referenced cell column is visible, and 0 if it is not. Removing the N() portion of the formula returns a Boolean result (TRUE/FALSE) in lieu of Binary (1/0).

=N(CELL("width",A1)>0)

This is where I totally plagiarized this from:
Count Visible Columns

answered Mar 11, 2020 at 18:04

Dustin's user avatar

Это похоже на подход Гэри Студента.  Определите следующую функцию VBA:

Function MyRowHidden(ref As Range)
    MyRowHidden = Rows(ref.Row).Hidden
End Function

См. Как добавить VBA в MS Office?
если вам нужна помощь с этим.  Теперь вы можете использовать MyRowHidden(cell) чтобы проверить, является ли строка, содержащая cell , скрытой.

Способ, который я придумал для решения проблемы, использует вспомогательный столбец, но вы можете скрыть это. 
Предполагая, что ваши данные начинаются со строки 2 , с категориями в столбце A введите

=OR($A1<>$A2, AND(H1,MyRowHidden(H1)))

в ячейку H2 и перетащите вниз.  Эта формула оценивается как ИСТИНА, если

  • категория в этом ряду (A2) отличается от категории в предыдущем ряду (A1); это первая строка новой категории, или
  • предыдущая строка должна быть выделена, но скрыта.

Затем просто используйте условное форматирование, чтобы выделить ячейку A2 если =H2 — true.

Пример: необработанные данные:

        полный набор данных

Да, я традиционалист; Я все еще считаю Плутон планетой. 
Здесь снова скрыты строки с простыми номерами (2, 3, 5, 7, 11 и 13):

        отфильтрованные данные

Конечно, вам нужно включить макросы в вашей книге.

Понравилась статья? Поделить с друзьями:
  • If cell is not null in excel
  • If cell is not blank formula excel
  • Ielts 4000 academic word list pdf
  • If cell is in array excel
  • Ieee 754 в excel