Ejecutar macro dependiendo de la longitud del contenido de una celda

Buen dia expertos, me gustaría saber si hay alguna macro que se pueda ejecutar dependiendo de la longitud del contenido de una celda.

Digamos que en la celda A2 yo capturo la descripción de un servicio, y lo que quiero que suceda es que al terminar de capturar la información y pasar a otra celda se ejecute la macro que mida el largo de la cadena de caracteres capturada en la celda A2, y si la longitud es mayor o igual a 30 caracteres entonces que haga que la celda A2 cambie de tamaño de fuente de 20 puntos a 12 puntos, y que si la celda es modificada y su longitud no es mayor o igual a 30 pues que vuelva al normalidad de 20 puntos

Gracias

1 Respuesta

Respuesta
1

No es necesaria una macro. Puedes utilizar el formato condicional.

Dame oportunidad y te mando un ejemplo.

Saludos. Dam

En la versión excel 2003, no se puede cambiar el tamaño de letra, ¿qué versión de excel tienes?

Como sea te mando la macro:

Instrucciones en hoja
1. Abre tu hoja de excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona ALt + F11
3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
4. Del lado derecho copia la macro

Private Sub Worksheet_Change(ByVal Target As Range)
'Cambia el tamaño de letra
'Por.Dam
If Not Intersect(Target, Range("A2")) Is Nothing Then
Target.Select
    If Len(Target.Value) >= 30 Then
        'cambia formato a 20
        With Selection.Font
            .Size = 20
        End With
    Else
        'cambia formato a 12
        With Selection.Font
            .Size = 12
        End With
    End If
End If
End Sub

Dentro de la macro, en donde dice “A2”, puedes cambiarlo por la celda que necesites, o bien, puedes poner un rango, por ejemplo para as celdas de la columna “A2:A10” ó de la fila “A2:E2”

Saludos. Dam

Hola Dam, muchas gracias me ha funcionado a la perfección; por otra parte efectivamente tengo el Excel 2003, asi que las opciones de tamaño de texto están deshabilitadas, asi que con la macro me has ayudado bastante.

Podrías cerrar lapregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas