¿Cómo agregar una segunda condición?

Tengo este código, pero no se como agregar una segunda condición(marcado en negritas).

Me podrían ayudar, please.

Private Sub WORKSHEET_CHANGE(ByVal TARGET As Range)
Dim keycells As Range
Set keycells = Range("C7")

If Not Application.Intersect(keycells, Range(TARGET.Address)) Is Nothing Then
If keycells = "_2_" Then
Rows("29:30").Hidden = True
Else
Rows("29:30").Hidden = False
End If
End If

End Sub

2 Respuestas

Respuesta

Te dejo las instrucciones a partir de la primera condición:

If Not Application.Intersect(keycells, Range(TARGET.Address)) Is Nothing Then
    If keycells = "_2_" Then
        Rows("29:30").Hidden = True
    ElseIf keycells = "_3_" Then      'agregado
        Rows("32:33").Hidden = True
    'otros Elseif
    Else
        Rows("29:30").Hidden = False
    End If
End If

Puedes agregar tantos ElseIf como condiciones tengas. 

Sdos y no olvides marcar una valoración para dar por cerrada la consulta.

Elsa

http://aplicaexcel.com

https://www.youtube.com/@ElsaMatilde 

Respuesta

Ho la Samael Nevarez y bienvenido a TodoExpertos.

Visita:

Cursos de Excel y Macros - YouTube


Prueba el siguiente código con la sentencia CASE. Ajusta los rangos de filas a tu necesidad.

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim keycells As Range
  Set keycells = Range("C7")
  If Not Intersect(Target, keycells) Is Nothing Then
    Select Case keycells.Value
      Case "_1_"
        Rows("27:28").Hidden = True
      Case "_2_"
        Rows("29:30").Hidden = True
      Case "_3_"
        Rows("31:32").Hidden = True
      Case Else
        Rows("27:32").Hidden = False
    End Select
  End If
End Sub

RECOMENDACIONES:

Curso de macros. Consejos para empezar a programar. - YouTube

Curso de macros. Declarar variables en vba excel. - YouTube

Función sumaproducto - YouTube


Sal u dos Dante Amor

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas