Las celdas de una hoja de trabajo pueden contener valores o pueden contener fórmulas. En algún momento, es posible que desee resaltar de alguna manera todas las celdas en su hoja de trabajo que contienen fórmulas coloreando esas celdas. Hay varias formas de abordar y resolver este problema. Si no tiene la necesidad de resaltar con tanta frecuencia, lo mejor es un enfoque manual.

Siga estos pasos:

  1. Presione F5 o Ctrl + G. Excel muestra el cuadro de diálogo Ir a.

  2. Haga clic en Especial. Excel muestra el cuadro de diálogo Ir a especial. (Ver figura 1)

  3. Seleccione el botón de opción Fórmulas.

  4. Haga clic en Aceptar.

En este punto, se seleccionan todas las celdas de la hoja de trabajo que contienen fórmulas y puede agregar color a esas celdas o formatearlas como desee. Este enfoque se puede automatizar, si se desea, mediante el uso de una macro como la siguiente:

Sub ColorFormulas()

ActiveSheet.Cells.SpecialCells(xlCellTypeFormulas, 23).Select     With Selection.Interior         .ColorIndex = 6         .Pattern = xlSolid     End With End Sub

Puede ejecutar esta macro tantas veces como sea necesario para resaltar las distintas celdas que contienen fórmulas. El único problema es que si se elimina una fórmula de una celda que estaba resaltada anteriormente, el resaltado permanece; no se elimina automáticamente. En este caso, se requiere un enfoque macro diferente. Esta macro actúa sobre un rango de celdas que seleccione antes de ejecutar la macro.

Sub ColorFunction()

For Each cell In Selection         If cell.HasFormula Then             With cell.Interior                 .ColorIndex = 6                 .Pattern = xlSolid             End With         Else             cell.Interior.ColorIndex = xlNone         End If     Next cell End Sub

La macro comprueba cada celda del rango. Si la celda contiene una fórmula, se resalta. Si la celda no contiene una fórmula, el resaltado está desactivado.

Otra posible solución es utilizar una función definida por el usuario junto con las capacidades de formato condicional de Excel. Cree la siguiente función en el Editor de VBA:

Function CellHasFormula(c As Range) As Boolean     CellHasFormula = c.HasFormula End Function

Con esta función en su lugar, puede usar las capacidades de formato condicional de Excel (que se detallan en otro lugar en ExcelTips) para verificar qué devuelve la fórmula. En otras palabras, establecería un formato condicional que verificara el resultado de esta fórmula:

=CellHasFormula(A1)

Si el resultado es verdadero (la celda contiene una fórmula), entonces se aplica su formato condicional.

Es interesante notar que no tiene que crear una macro VBA para usar la ruta de formato condicional, si no lo desea. (Algunas personas tienen una aversión natural al uso de macros). En su lugar, puede seguir estos pasos:

  1. Presione Ctrl + F3. Excel muestra el cuadro de diálogo Definir nombre.

  2. En el campo Nombres (en la parte superior del cuadro de diálogo), ingrese un nombre como FormulaInCell.

  3. En el campo Se refiere a (en la parte inferior del cuadro de diálogo), ingrese lo siguiente:

  4. Haga clic en Aceptar.

Ahora puede seguir las técnicas descritas anteriormente para configurar el formato condicional. La única diferencia es que el formato condicional debería buscar la siguiente fórmula, en su lugar:

=FormulaInCell

_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 (2766) se aplica a Microsoft Excel 97, 2000, 2002 y 2003.