Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Logo Excel Avanzado

Función WorksheetFunction.IsFormula

| Sin comentarios

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

isformula1, Función WorksheetFunction.IsFormula

Dado que la celda D3 contiene una fórmula:

isformula2, Función WorksheetFunction.IsFormula

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:

isformula3, Función WorksheetFunction.IsFormula

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:

isformula4, Función WorksheetFunction.IsFormula

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

Deja un comentario

Los campos requeridos estan marcados con *.