Duda de excel...

¿Cómo puedo hacer para llamar a un formulario si el valor de una celda de una de mis hojas tiene el valor 1?

1 respuesta

Respuesta
1
No se si entendí bien, pero creo que quieres "llamar" a un formulario cuando el valr de cierta celda sea 1, si es así pon este código:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$2" And Target.Value = 1 Then
    Userform1.Show
End If
End Sub
En el evento Worksheet_Change de la hoja donde quieras que se active.
Excelente, esto me funciona, pero tengo una duda más. ¿Es posible llamar a distintas hojas del formulario dependiendo cual sea el número de la celda? Es decir, si pongo 1 en la celda que se me despliegue 1 sola pestaá de la hoja, si pongo 2 que se me desplieguen 2 de las pestañas del formulario multipage, y así sucesivamente.
Desde ya muchas gracias.
Suponiendo que la celda es "B2" pon este código en tu formulario.
Private Sub UserForm_Activate()
Dim P As Integer
With Me.MultiPage1
    If Range("B2").Value > .Pages.Count Then
        MsgBox "El Numero es mayor a las PAginas del Formulario", vbExclamation
        Unload Me
        Exit Sub
    End If
'Cambia a No Visibles todas lsa paginas del MultiPage   
    For P = 0 To .Pages.Count - 1
        .Pages(P).Visible = False
    Next
'Depende del valor de la celda es las paginas q desplegará
    For P = 0 To Range("B2").Value - 1
        .Pages(P).Visible = True
    Next
End With
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas