Masquer un userform

Résolu
steph59 -  
 steph59 -
Bonjour,
J'ai créé un userform comportant différents boutons permettant d'ouvrir des fichiers excels.
Lorsque je clique sur un bouton, je souhaiterais que le fichier Excel s'ouvre (ce qui marche) et que ce nouveau fichier soit actif.
Le problème c'est que pour obtenir ceci, je n'ai pas trouvé d'autre moyen que de masquer le userform en utilisant userform.hide, ce que je ne souhaite pas car je voudrais revenir sur le userform directement lorsque je quitte le fichier venant d'être ouvert.
Si quelqu'un peut m'aider, ce serait très sympa.
Merci

4 réponses

lermite222 Messages postés 9042 Statut Contributeur 1 191
 
Bonjour,
UserForm1.show 1
devrait résoudre ton problème.
(Non modal)
A+
0
wilfried_42 Messages postés 912 Statut Contributeur 245
 
Bonjour à tous

Ayant fait plusieurs essais (ne connaissant pas la parametre 1 du modal), UsuserForm1.Show et UserForm1.show 1 donnent le meme resultat
Affiche le classeur ouvert, laisse l'userform affichée mais ne permet pas d'action sur la classeur
pour permettre cela, il faut afficher en Show non momal : 2 syntaxes possible
UserForm1.Show False ou UserForm1.Show 0 (False en VBA est = 0)
0
steph59
 
Merci pour votre réponse mais cela ne marche pas (peut être me suis je trompé).
Mon texte :

'apparition du userform
userform1.show 0

' click ensuite sur le bouton engendrant l'ouverture du fichier
Workbooks.Open Filename:= _
"C:\Documents and Settings\user\Mes documents\test.xls"


Dans ce cas, le fichier s'ouvre, mais mon userform reste apparent devant le fichier (lorsqu'il représente la totalité de l'écran, c'est problématique)

Merci de votre aide
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 279
 
Bonsoir,

juste une piste car je ne sais pas comment, l'ouvrir dans une 2nde session d'excel et voir...
eric
0
wilfried_42 Messages postés 912 Statut Contributeur 245
 
bonjour à tous

une piste si j'ai tout compris
à mettre dans le module ThisWorkBoook

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
    UserForm1.Show
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
    UserForm1.Hide
End Sub
0
steph59
 
Bonjour Wielfrid,
Merci pour votre aide.
C'était exactement ce que je cherchais.
Cordialement
0