La función IsFormula se traduce al español como "es formula", esta fórmula, al utilizarla sobre un rango en Excel nos devolverá true o false, dependiendo si es que el rango contiene o no una formula respectivamente.
Entorno VBA:
Para conocer más sobre esta función utilizaremos un macro, con el siguiente código se nos indicara si la celda a1 de la primera hoja contiene o no una formula, esto nos devolverá un verdadero o falso con relación al contenido de la celda, con esto podremos ubicar fácilmente las celdas con formulas dentro de nuestra hoja de cálculo.
Sub mini()
Set myRange = Sheets("sheet1").Range("d3")
Sheets("sheet1").Range("f7") = Application.WorksheetFunction.IsFormula(myRange)
End Sub
Dado que la celda D3 contiene una fórmula:
La función nos dará el valor TRUE (verdadero)
En el siguiente ejemplo cuando la celda D3 es un valor, la celda F7 cambiara luego de ejecutar el macro:
Ejemplo:
Se requiere resaltar de color rojo todas las celdas que contengan formulas en la siguiente hoja de trabajo, para ello se deberá utilizar macros.
Hoja de trabajo:
Solución:
Por cada celda de la tabla se hará la validación con la función IsFormula y si el resultado es verdadero, se procederá a modificar el color de fondo de esta celda, con lo cual tendremos resaltados los campos solicitados en el apartado, para ello utilizaremos el siguiente macro:
Sub resaltar()
Dim z, y As Integer
Set rango = Sheets("sheet2").Range("b3")
y = 0
Do While y < 9
z = 0
Do While z < 7
'MsgBox rango.Offset(y, z)
If WorksheetFunction.IsFormula(rango.Offset(y, z)) = "True" Then rango.Offset(y, z).Interior.ColorIndex = 3
z = z + 1
Loop
y = y + 1
Loop
End Sub
Como se observa, se realiza la validación de cada celda con la función IsFormula, al devolver un valor verdadero, la celda se resalta de color rojo, mientras que si el valor es falso, la celda queda sin efecto.
Descargar ejemplos: IsFormula
Creado por : Yuliana Grajeda