Cerrar form al quitar el ratón de encima (vba excel)

NO se si se puede hacer, ante todo disculpas si así fuera.

En form1, se puede pasar el ratón por encima de un label y que se abra un form2... ¿y al quitar el ratón de encima que se cerrara?

Conseguí que se coloreara los label al pasar el ratón por encima, pero no enceuntro la forma de hacer lo de la anterior pregunta.d

1 Respuesta

Respuesta
1

Hol.a

Sí es posible hacer ambas cosas pero con lo de cerrar el "UserForm", no necesariamente surtirá efecto cuando el puntero del ratón se mueve demasiado rápido.

Coloca esto en un "Label" del primer "UserForm":

Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
UserForm2.Show
End Sub

No olvidar reemplazar, de ser necesario, el nombre del "Userform"

Luego en el segundo "Userform" coloca esto:

Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
   With UserForm2
    If X <= 1 Or Y <= 1 Or X >= (.Width * 0.875) - 1 Or Y >= (.Height * 0.875) - 1 _
      Then Unload Me _
      Else
  End With
End Sub

Del mismo modo no olvides, de ser necesario, reemplazar el nombre del "UserForm".

Salu2

Abraham Valencia

Lo de cerrar funciona con mayor precisión si se usa funciones de la API de Windows pero hay que programar bastante y la verdad, además de saber muy bien VBA, creo que el esfuerzo no compensa el resultado.

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas