Mostrar automáticamente userform, pero que no impida trabajar con otros archivos excel.

Motivado por lo expuesto por Dante Amor, planteo mi pregunta, ya que cuando se obliga a ocultar a excel para auotmáticamente mostrar un userform, este no permite abrir otros archivos excel para trabajar. Una solución por la que vi era minimizar y maximizar pero no se si se cumpla la condición de permitir trabajar con otros archivos. Normalmente las aplicaciones están al frente mientras las estamos usando y si hacemos click en otra aplicaciín la primera se coloca atrás y trabajo con la ultima,... Pero excel no permite eso con los userforms.

1 respuesta

Respuesta
1

H  o l a:

Pon esto en tu userform

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Const WS_MINIMIZEBOX As Long = &H20000
Private Const WS_MAXIMIZEBOX As Long = &H10000
Private Const GWL_STYLE As Long = (-16)
Private Sub UserForm_Initialize()
Dim lngMyHandle As Long, lngCurrentStyle As Long, lngNewStyle As Long
lngMyHandle = FindWindow("THUNDERDFRAME", Me.Caption)
lngCurrentStyle = GetWindowLong(lngMyHandle, GWL_STYLE)
lngNewStyle = lngCurrentStyle Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX
SetWindowLong lngMyHandle, GWL_STYLE, lngNewStyle
End Sub

Gracias Dante, debido a que tengo en ThisWorkbook

Private Sub Workbook_Open()

Application.visible = False
UserForm1.Show
End Sub

Se oculta la aplicación excel, y se muestra el formulario, pero cuando a este lo minimizo y abro otro archivo excel si a este ultimo lo minimizo el formulario que estuvo minimizado se oculta y cuando activo o maximizo al segundo archivo abierto se muestra el formulario minimizado . No podría permanecer de manera independiente el formulario minimizado o maximizado de otros archivos excel??

http://www.ayudaexcel.com/foro/attachments/upload_2015-9-14_9-44-49-png.57094/

Si lo minimizo

http://www.ayudaexcel.com/foro/attachments/upload_2015-9-14_14-5-57-png.57106/?temp_hash=0876644539c7d8ab13c364f513129579

y abro otro archivo excel y a este lo minimizo el fomulario se oculta

http://www.ayudaexcel.com/foro/attachments/upload_2015-9-14_14-3-15-png.57105/?temp_hash=0876644539c7d8ab13c364f513129579

Prueba con esto:

Application.Windows("libro1.xlsm").Visible = False

Con eso solamente ocultas un libro y no los demás.

La otra opción, si quieres trabajar con un excel independiente, abre una nueva aplicación de excel.

Gracias Dante

Pero el resultado explicado es igual, peor... al abrir el archivo, no se oculta excel, como en la primer imagen mostrada en el post anterior

Es que no veo las imágenes y creo que ya no estoy entendiendo qué es lo que necesitas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas