Abrir un userform desde otro userform que se encuentran en distintos libro

Como hago para Abrir un userform desde otro userform que se encuentran en distintos libro, los libros están en la misma carpeta pero cada uno tienen sus propios userform con macros, yo quiero que UserForm1 del libro1 "active o lo habrá a UserForm2 del libro2

Respuesta
2

En el libro2 crea un módulo y pon lo siguiente:

Sub abrir()
    UserForm2.Show
End Sub

Ahora en tu formulario1 del libro1, en un botón pon lo siguiente:

Private Sub CommandButton1_Click()
    Run "Libro2.xlsm!abrir"
End Sub

El libro2 deberá estar abierto.


Saludos. Dante Amor

Private Sub CommandButton1_Click()
    Run "Libro2.xlsm!abrir"
End Sub
No <ins class="autocorrected" data-misspell="podrias">podrías</ins> ser porque el libro2 esta guardado con macros osea es lbros2.xlsx. y no me va abrir el Userform, directamente abre el libro 
Private Sub CommandButton1_Click()
    Run "Libro2.xlsm!abrir"
End Sub
el libro2.xlsx y yo no quiero que habra el libro quiero que habra el userfor2 que esta en el libro2.xlsx pero desde el CommandButton1 que esta en el userform1 que esta en el libro1.xlsx

a ver si me explico mejor 

¿Creaste el módulo en el libro2?

El libro2 deberá estar abierto

Lo que yo te puse son ejemplos, pero tienes que poner los dato reales, yo puse como ejemplo que tu otro libro se llama "Libro2.xlsm", pero tu tienes que poner le nombre de tu segundo libro.

Si entendí el ejemplo, pero aun así solo habré el libro no el userform, no quiero que el libro se ejecute o que este visible

No me dijiste si creaste un módulo en el libro2 con esto, es el primer paso.

Sub abrir()    UserForm2.ShowEnd Sub

Segundo paso abre tu libro2

Tercer paso en tu libro1 en el formulario1 tienes que tener un botón con esto:

Private Sub CommandButton1_Click()
Run "Libro2.xlsm!abrir"
End Sub

paso 4, abre tu formulario1 de tu libro1 y presiona el botón. Se debe mostrar el userform2 de tu libro2.

Ya que lo hayas probado de manera correcta, entonces ya puedes ocultar el libro2 de esta forma:

Private Sub CommandButton1_Click()
Application.Windows("libro2.xlsm").Visible = False
Run "Libro2.xlsm!abrir"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas