Tengo un SplashForm en mi openbook que esta combinada con un login, ¿Pero no me abre y no se por que?
Tengo el siguiente código en vba normalmente debe abrir con Splahfor y luego ir aun login que lo anexare al fina, pero ese SplashForm no abre, he probado de dirente formas y no funciona, solo cuando le doy al pero si dirjo la macro funciona. ¿Alguien me puede ayudar a resolver esta incógnita?
Saludos
Eusebio
Private Sub Workbook_Open()
ThisWorkbook.Application.Visible = False
SplashForm.Show
pass = "chevo"
Sheets("MKP").Unprotect pass
lastrow = Sheets("MKP").Cells(Rows.Count, "A").End(xlUp).Row
Sheets("MKP").Range("AE:AN").Locked = False
With Range("AE2:AI" & lastrow)
.Formula = "=sum(G2:G100)"
End With
'
With Range("AJ2:AN" & lastrow)
.Formula = "=sum(O2:O100)"
End With
'
Sheets("MKP").Range("AE:AN").Locked = True
'
Sheets("MKP").Range("BI:BR").Locked = False
With Range("BI2:BM" & lastrow)
.Formula = "=sum(AY2:AY100)"
End With
'
With Range("BN2:BR" & lastrow)
.Formula = "=sum(BD2:BD100)"
End With
'
Sheets("MKP").Range("BI:BR").Locked = True
'
'
Sheets("MKP").Protect pass
ThisWorkbook.Application.Visible = True
End Sub
Codigo del SplashForm es :
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function FindWindowA Lib "user32" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
#End If
Private Sub UserForm_Initialize()
'Este código realiza el procedimiento de ocultar la barra de título, haciendo uso de las API
Dim lngWindow As Long, lFrmHdl As Long
lFrmHdl = FindWindowA(vbNullString, Me.Caption)
lngWindow = GetWindowLong(lFrmHdl, GWL_STYLE)
lngWindow = lngWindow And (Not WS_CAPTION)
Call SetWindowLong(lFrmHdl, GWL_STYLE, lngWindow)
Call DrawMenuBar(lFrmHdl)
'-----------------------------------------------------------------------------------------
'Cargamos el formulario y establecemos un timer para que se cierre automáticamente
Dim Contador, Maximo, Intervalo As Integer
Dim Inicio As Double
Dim X
Maximo = 300
Me.Show
For Contador = 1 To Maximo
Inicio = Timer
Do Until Timer - Inicio > Intervalo
X = DoEvents()
Loop
Me.lbl_Bar.Width = Contador
Me.lbl_Percent.Caption = "Cargando " & Format(Contador / Maximo, "Percent")
Next Contador
frm_Login.Show
End
End Sub