Mike, como contador, tiene la necesidad de ocultar filas en una hoja de trabajo según los valores de dos celdas de la fila. Sus tablas de datos tienen tres columnas; si una fila contiene un cero en las columnas dos y tres, entonces la fila debe estar oculta. Si la columna dos o tres está en blanco o contiene algún otro valor, la fila no debe ocultarse.

Hay un par de formas de abordar este problema. El primero es utilizar las capacidades de filtrado de Excel. Simplemente cree otra columna que contenga una fórmula como esta:

=AND(B2=0,C2=0)

El valor devuelto por la fórmula será Verdadero solo si tanto la segunda (B) como la tercera © columnas contienen un valor cero. Copie la fórmula en las otras celdas correspondientes de la columna y luego podrá aplicar un filtro basado en esa columna. Cuando muestra solo aquellas filas que contienen un Falso en la columna, entonces ha ocultado efectivamente las filas en las que hay un valor cero en las columnas dos y tres.

También puede utilizar una macro para comprobar las filas por usted. La siguiente macro recorre cada fila en la hoja de trabajo, comenzando con la fila 1. Siempre que haya algo en la columna A, la macro verifica para asegurarse de que haya un valor cero en las columnas B y C. Si lo hay, entonces se establece la propiedad .Hidden para la fila.

Sub Hide()

Dim Criteria as Boolean     Dim i As Integer

i = 1     Do Until Trim(Cells(i, 1).Value) = ""          Criteria = True         Criteria = Criteria And (Cells(i, 2).Value = 0) _           And Cells(i, 2).Value <> ""

Criteria = Criteria And (Cells(i, 3).Value = 0) _           And Cells(i, 3).Value <> ""          If Criteria Then Rows(i).EntireRow.Hidden = True         i = i + 1      Loop  End Sub

La macro se ejecuta hasta el momento en que encuentra una fila donde no hay nada en la columna A. Esto significa que debe asegurarse de que realmente haya algo en las filas antes de su tabla de datos. Si su tabla de datos comienza en la fila 4 de la hoja de trabajo y las celdas A1 a A3 no tienen nada, la macro nunca se ejecutará satisfactoriamente. Por supuesto, puede ajustar la macro en esta situación para que comience a verificar en la fila 4; simplemente cambie la asignación inicial de la variable i a 4 en lugar de 1.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.

link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (11746) se aplica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 y Excel en Office 365. Puede encontrar una versión de este consejo para la interfaz de menú anterior de Excel aquí:

link: / excel-Hiding_Rows_Based_on_Two_Values ​​[Ocultar filas basadas en dos valores].