Bonjour à tous,
Voilà mon soucis :
Un classeur principal "1" par lequel j'ouvre un second classeur "2" avec la macro suivante (execution par bouton dans une userform).
Je souhaite que mon userform disparaisse à l'ouverture du fichier "2" et reaparaisse dès l'activation du fichier "1".
Ce que j'ai fait :
commandbutton1_click()
Dim z As String
Dim y As String
'y = nom du fichier.xls
'z = Chemin entier du fichier.xls
y = Sheets("page de garde").Range("H46").Value
z = Sheets("page de garde").Range("H45").Value
'en fait je colle un "1" dans une cellule car je voudrais que le userform reaparaisse seulement dans le cas de cette macro (vous verrez à quoi sa sert dans la macro qui suit...)
Sheets("page de garde").Range("H48").Value = 1
On Error GoTo h
Workbooks.Open z
ActiveWorkbook.ChangeFileAccess xlReadOnly
Exit Sub
h:
MsgBox "Cette option est disponible seulement pour les capabilités effectuées après Janvier 2008."
End sub
+
Private Sub Workbook_windowActivate(ByVal Wn As Window)
If Sheets("page de garde").Range("H48").Value = 1 Then
UserForm1.Show
Sheets("page de garde").Range("H48").Value = ""
Else: End If
End Sub
+
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
UserForm1.Hide
End Sub
Mon problème :
j'ouvre mon fichier "2", je le vois s'ouvrir car mon userform disparait 0,0005s.
mais mon userform (qui est en fullscreen) réaparait dans la foulée et je ne peux donc pas visualiser le document "2" ouvert.
Ca fonctionne une fois sur 2. je sais pas pourquoi....
Et quand ca fonctionne, le userform ne réapparait pas dès l'activation du classeur "1"...
A n'y rien comprendre....
Je vous remercie par avance pour votre aide
Voilà mon soucis :
Un classeur principal "1" par lequel j'ouvre un second classeur "2" avec la macro suivante (execution par bouton dans une userform).
Je souhaite que mon userform disparaisse à l'ouverture du fichier "2" et reaparaisse dès l'activation du fichier "1".
Ce que j'ai fait :
commandbutton1_click()
Dim z As String
Dim y As String
'y = nom du fichier.xls
'z = Chemin entier du fichier.xls
y = Sheets("page de garde").Range("H46").Value
z = Sheets("page de garde").Range("H45").Value
'en fait je colle un "1" dans une cellule car je voudrais que le userform reaparaisse seulement dans le cas de cette macro (vous verrez à quoi sa sert dans la macro qui suit...)
Sheets("page de garde").Range("H48").Value = 1
On Error GoTo h
Workbooks.Open z
ActiveWorkbook.ChangeFileAccess xlReadOnly
Exit Sub
h:
MsgBox "Cette option est disponible seulement pour les capabilités effectuées après Janvier 2008."
End sub
+
Private Sub Workbook_windowActivate(ByVal Wn As Window)
If Sheets("page de garde").Range("H48").Value = 1 Then
UserForm1.Show
Sheets("page de garde").Range("H48").Value = ""
Else: End If
End Sub
+
Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
UserForm1.Hide
End Sub
Mon problème :
j'ouvre mon fichier "2", je le vois s'ouvrir car mon userform disparait 0,0005s.
mais mon userform (qui est en fullscreen) réaparait dans la foulée et je ne peux donc pas visualiser le document "2" ouvert.
Ca fonctionne une fois sur 2. je sais pas pourquoi....
Et quand ca fonctionne, le userform ne réapparait pas dès l'activation du classeur "1"...
A n'y rien comprendre....
Je vous remercie par avance pour votre aide