Supongamos que importa información de forma rutinaria desde otro programa a Excel. La información contiene valores numéricos, pero también puede contener espacios en blanco. Es posible que desee utilizar un formato condicional en la información importada para resaltar cualquier valor cero. El problema es que si solo agrega un formato condicional que resalta las celdas para ver si son cero, la condición también resaltará las celdas que estén en blanco, ya que también contienen un valor «cero».

Hay varias soluciones diferentes a esta situación. Una solución es aplicar un formato condicional que usa dos condiciones. La primera condición comprueba los espacios en blanco y la segunda comprueba los valores cero.

La condición que comprueba los espacios en blanco no necesita ajustar ningún formato, pero la que comprueba los valores cero sí. Esto funciona porque si se cumple la primera condición (la celda está en blanco), la segunda condición nunca se prueba. Haz lo siguiente:

  1. Seleccione el rango que desea formatear condicionalmente. (Para este ejemplo, asumiré que ha seleccionado el rango A2: A99.)

  2. Elija Formato condicional en el menú Formato. Excel muestra el cuadro de diálogo Formato condicional.

  3. Usando la primera lista desplegable para la Condición 1, elija La fórmula es.

  4. En el cuadro de fórmula para la Condición 1, ingrese la fórmula = ESBLANCO (A2).

(Ver figura 1)

  1. Haga clic en Agregar. Excel agrega una segunda condición al cuadro de diálogo.

  2. Usando la primera lista desplegable para la Condición 2, elija El valor de celda es.

  3. Usando la segunda lista desplegable para la Condición 2, elija Igual a. En el cuadro de valor de la Condición 2, ingrese 0. (Ver Figura 2.)

  4. Haga clic en el botón Formato para la Condición 2. Excel muestra el cuadro de diálogo Formato de celdas.

  5. Utilice los controles del cuadro de diálogo para modificar el formato, según desee.

  6. Haga clic en Aceptar para cerrar el cuadro de diálogo Formato de celdas.

  7. Haga clic en Aceptar para cerrar el cuadro de diálogo Formato condicional. El formato se aplica al rango de celdas que seleccionó en el paso 1.

Otra solución es combinar sus dos condiciones en una sola condición. Siga estos pasos:

  1. Seleccione el rango que desea formatear condicionalmente. (Para este ejemplo, asumiré que ha seleccionado el rango A2: A99.)

  2. Elija Formato condicional en el menú Formato. Excel muestra el cuadro de diálogo Formato condicional.

  3. Usando la primera lista desplegable para la Condición 1, elija La fórmula es.

  4. En el cuadro de fórmula para la Condición 1, ingrese la fórmula = Y (A2 = 0, A2 <> «»).

  5. Haga clic en el botón Formato para la condición 1. Excel muestra el cuadro de diálogo Formato de celdas.

  6. Utilice los controles del cuadro de diálogo para modificar el formato, según desee.

  7. Haga clic en Aceptar para cerrar el cuadro de diálogo Formato de celdas.

  8. Haga clic en Aceptar para cerrar el cuadro de diálogo Formato condicional. El formato se aplica al rango de celdas que seleccionó en el paso 1.

La fórmula utilizada en el paso 4 comprueba que el valor sea 0 y que la celda no esté en blanco. La función AND se asegura de que solo cuando se satisfagan ambos criterios la fórmula devolverá True y se aplicará el formato.

Hay muchas otras fórmulas que también podrían usarse. Por ejemplo, cada una de las siguientes fórmulas podría sustituirse en el paso 5 o 4:

  • = Y (CUENTA (A2) = 1, A2 = 0)

  • = Y (A2 = 0, NO (ESBLANCO (A2)))

  • = Y (A2 = 0, LEN (A2)> 0)

NO (ESBLANCO (A2)) (A2 = 0)

Si desea una forma aún más rápida de resaltar valores cero sin tener en cuenta los espacios en blanco, podría considerar el uso de una macro. La macro sería más rápida porque podría importarla y ejecutarla; no tiene que seleccionar un rango de celdas e ingresar la fórmula (o fórmulas) para el formato condicional. La siguiente macro es un ejemplo de una que podría utilizar:

Sub FormatRed()

TotalRows = 65000     ColNum = 1

For i = 1 To Cells(TotalRows, ColNum).End(xlUp).Row         Cells(i, ColNum).Interior.ColorIndex = xlAutomatic         If IsNumeric(Cells(i, ColNum).Value) Then             If Cells(i, ColNum).Value = 0 Then                 Cells(i, ColNum).Interior.ColorIndex = 3             End If         End If     Next End Sub

La macro verifica las celdas en la columna A. (Verifica las celdas en las filas 1 a 65,000; puede modificar esto, si lo desea). Si la celda contiene un valor numérico y ese valor es cero, entonces la celda se llena de rojo.

Si la celda contiene algo más, la celda vuelve a su color normal.

_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 (2980) se aplica a Microsoft Excel 97, 2000, 2002 y 2003. Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posterior) aquí:

link: / excelribbon-Conditional_Formats_that_Distinguish_Blanks_and_Zeroes [Formatos condicionales que distinguen espacios en blanco y ceros].