UserForm visible uniquement pour 1 fichier

guillaume89

XLDnaute Nouveau
Bonjour à toutes et à tous,

J'ai un petit soucis à régler .. J'ai eu à developper tout un ensemble de macros, en utilisant différents fichiers.
Je suis en train de faire un Menu pour que les utilisateurs ne galèrent pas trop à chercher où et comment lancer tel ou tel truc ...

Je fais mon menu avec des userform (logique, à mon avis), quand je lance mon fichier Menu, un premier userForm apparait .. et je navigue dans les formulaires ..

A certains moments, ces formulaires ouvrent d'autres fichiers pour lancer les macros ou bien juste pour consulter les résultats de ces macros (sous forme de tableaux, graphiques ..)

Mon problème est le suivant : Le userForm qui m'a permis d'ouvrir ces fichiers reste toujours au premier plan ..
Tous mes userForm ne sont pas Modaux (pour cette raison que je peux ouvrir d'autres fichiers, et naviguer dedans), mais j'ai toujours ce userForm devant ...

Si vous avez des solutions, je suis preneur :)

Je pense qu'il est possible de fermer le userForm à chaque ouverture de Fichier W, et quand le fichier W se ferme, lui dire qu'il faut re-ouvrir ce userForm, mais ce n'est pas vraiment ce que je voudrai ..

Merci d'avance à vous,
Guillaume.
 
Dernière édition:

guillaume89

XLDnaute Nouveau
Re : UserForm visible uniquement pour 1 fichier

Bonjour,

Je viens de tester, ça ne fonctionne pas ..

Visualiser étant le nom de mon USF

Code:
    Visualiser.Hide
    
    On Error GoTo erreurRecapMensuel
    
    ChDir "O:\...
    Workbooks.Open Filename:= _
        "O:\...\plop.xlsx"
    test = 1

erreurRecapMensuel:
    If test <> 1 Then
        MsgBox ("Le tableau n'est pas encore disponible.")
    End If
    
    Visualiser.Show

Logique, puisque je lui demande d'ouvrir un fichier, il le fait, donc re-affiche mon form .. devant n'importe quelle page :confused:

Merci à vous :)
 

guillaume89

XLDnaute Nouveau
Re : UserForm visible uniquement pour 1 fichier

Problème résolu.

Je mets, si jamais ça peut aider quelqu'un :)

Code:
Private Sub Workbook_Activate()
    UserForms(0).Show
End Sub

Private Sub Workbook_Deactivate()
    UserForms(0).Hide
End Sub

Tout simplement ... Evidemment, un seul USF actif à n'importe quel moment ..

Merci pour l'idée du Hide, pas sûr que j'y aurai pensé ;)

Bonne journée,
Guillaume.
 

Discussions similaires

Réponses
16
Affichages
728

Statistiques des forums

Discussions
314 085
Messages
2 105 646
Membres
109 409
dernier inscrit
Minouch 2024