Encontrar constantes en una fórmula

Pido de su valiosa ayuda para encontrar un código que pueda hacer lo siguiente:
Tengo varios archivos los cuales en una columna contienen fórmulas, éstas formulas todas dan como resultado siempre números. Ahora bien, resulta que estas fórmulas a veces contienen números (constantes) en el cuerpo de la fórmula y precisamente necesito código que me resalte la celda que tiene ese tipo de constantes. Pongo un ejemplo:
En la celda A2, tengo la fórmula =B2+C2, esta celda no necesito que la marque.
En la celda A3 tengo la fórmula =B3+C3+10, esta celda si necesito que la marque porque tiene una constante (el número 10).
Ya intenté con funciones como =ESNUMERO pero no me sirve porque al evaluar, como todas dan como resultado un número me las marca como VERDADERO.
También intente con "selección especial" -->número, pero tampoco sirve porque selecciona todas las celdas puesto que el resultado de las fórmulas es número, y yo solo necesito identificar las que en el cuerpo de la fórmula tienen números constantes.

1 respuesta

Respuesta

Este es el resultado de la macro te pondrá en rojo las constantes sin importar cuantas variables tengas

y este es el codigo

Sub formato()
Set datos = Range("a1").CurrentRegion
With datos
For i = 1 To .Rows.Count
    variable = .Cells(i, 1)
    separa = Split(variable, "+")
    For j = 0 To UBound(separa)
        constante = separa(j)
        If IsNumeric(constante) Then
            hallar = WorksheetFunction.Search(constante, variable, 1)
            largo = Len(constante)
            With .Cells(i, 1).Characters(hallar, largo).Font
                .Bold = True
                .ColorIndex = 3
            End With
        End If
    Next j
Next i
End With
set datos=nothing
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas