Ejecutar macro según valor en un rango con botón

Buena Expertos!

Estoy tratando de ejecutar una macro con botón según el valor de celda en un rango definido en excel, es decir si en la columna #5 (e1:e1600) hay un valor (resultado de una fórmula) que puede ser "SI-08 PLAQUETA/ SI-08" se ejecute la macro 2 y si este valor no se encuentra se ejecute la macro 1.

Estoy tratando de adaptar esta macro que encontré en un foro respuesta de @ElsaMatilde que dejo a continuación, sin buenos resultados, les agradezco si me pudieran ayudar con este proceso

Sub SEN_DESCRIPCION_TABLERO(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Row < 3 Then Exit Sub
If Target.Column = 5 Then
If Target.Value = "SI-08 PLAQUETA/ SI-08 PLAQUETA" Then Call SEN_DESCRIPCION_TABLERO1
ElseIf Target.Column = 5 Then
If Target.Value <> 0 Then Call SEN_DESCRIPCION_TABLERO2
End If
End Sub
Respuesta
1

En mi caso usaría las macro en el evento change de la hoja

Enfocado en la comuna 5 cuando cambie a el valor que quiere se ejecute la macro

¿Me imagino que introduce información a diario o en ocasión?

2 respuestas más de otros expertos

Respuesta
1

Yo reemplazaría tu código por algo similar a esto:

Sub SEN_DESCRIPCION_TABLERO()
Dim xx As Range
Set xx = ActiveSheet.Range("E1:E1600").Find("SI-08 PLAQUETA/ SI-08", , xlValues, xlWhole)
If xx Is Nothing Then
    macroCuandoNoEncuentra
Else
    macroCuandoSiEncuentra
End If
End Sub

Salu2

Respuesta
1

Mis macros generalmente llevan mi nombre ;) salvo que las modifiquen.

Lo correcto sería así:

Sub SEN_DESCRIPCION_TABLERO(ByVal Target As Range)
'x Elsamatilde
If Target.Count > 1 Or Target.Row < 3 Then Exit Sub
'solo se controla columna 5
If Target.Column = 5 Then
    If Target.Value = "SI-08 PLAQUETA/ SI-08 PLAQUETA" Then
        Call SEN_DESCRIPCION_TABLERO1
    ElseIf Target.Value <> 0 Then
        Call SEN_DESCRIPCION_TABLERO2
    End If
End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas