Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ouvrir une application Excel avec macros

3 réponses
Avatar
Denys
Bonjour =E0 tous,

J'ai une application excel dans laquelle l'usager doit entrer
certaines donn=E9es. Cependant, lorsque l'usager choisit "QC" dans un
certain combobox, il doit ensuite quitter l'application et en remplir
une autre. Il arrive parfois qu'ils oublient de le faire.

Ma question est: sur la feuille excel, il y a un bouton de commade qui
fait apparaitre le Userform. Est-il possible qu'une fois que l'usager
ait choisit QC avec le userform, d'ouvrir l'autre application... et
que les macros soient "enable" et enfin de revenir =E0 la premi=E8re
application et de la fermer ??

J'en demande pas mal pour un vendredi n'est-ce pas?

Merci pour votre temps

Denys

3 réponses

Avatar
Patrick
Bonjour,

Que veux-tu dire par "ouvrir une autre application" ? Est-ce que c'est un
autre fichier Excel ou démarrer un autre Excel ?

Pour ouvrir un autre Excel et y ouvrir un fichier Excel :
Dim xlApp As Excel.Application

Set xlApp = New Excel.Application
xlApp.Visible = True
xlApp.Workbooks.Open FileName:="...Fichier.xls"

Bonne journée.

--
Patrick


"Denys" wrote:

Bonjour à tous,

J'ai une application excel dans laquelle l'usager doit entrer
certaines données. Cependant, lorsque l'usager choisit "QC" dans un
certain combobox, il doit ensuite quitter l'application et en remplir
une autre. Il arrive parfois qu'ils oublient de le faire.

Ma question est: sur la feuille excel, il y a un bouton de commade qui
fait apparaitre le Userform. Est-il possible qu'une fois que l'usager
ait choisit QC avec le userform, d'ouvrir l'autre application... et
que les macros soient "enable" et enfin de revenir à la première
application et de la fermer ??

J'en demande pas mal pour un vendredi n'est-ce pas?

Merci pour votre temps

Denys



Avatar
michdenis
Tu ouvres ton formulaire dans une fenêtre modale ce qui
oblige l'usager à s'occuper prioritairement de répondre
au formulaire.
Tu peux utiliser l'événement Change du combobox pour
appeler la commande suivante:
Shell "CheminFichierExécutable.exe, vbNormalFocus

Mais j'aurais tendance à mettre un bouton OK à côté du
combobox afin de s'assurer que l'usager est prêt à ouvrir
la nouvelle application et qu'il n'a pas fait simplement une
erreur de manipulation.
Si tu adaptes cette façon de faire, tu définis une variable au
niveau du formulaire (en haut de celui-ci) Dim maVar As Boolean
et dans le bouton OK sur clic -> maVar = True
Code du bouton OK
Private Sub CommandButton1_Click()
'Exemple
Shell "C:windowsexplorer.exe", vbNormalFocus
maVar = True
End Sub

Et pour empêcher que l'usager ferme le formulaire avant d'avoir
cliqué sur le bouton Ok, tu gères cet événement de cette façon :

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If maVar = False Then
Cancel = True
Else
Cancel = False
End If
End Sub




"Denys" a écrit dans le message de groupe de discussion :

Bonjour à tous,

J'ai une application excel dans laquelle l'usager doit entrer
certaines données. Cependant, lorsque l'usager choisit "QC" dans un
certain combobox, il doit ensuite quitter l'application et en remplir
une autre. Il arrive parfois qu'ils oublient de le faire.

Ma question est: sur la feuille excel, il y a un bouton de commade qui
fait apparaitre le Userform. Est-il possible qu'une fois que l'usager
ait choisit QC avec le userform, d'ouvrir l'autre application... et
que les macros soient "enable" et enfin de revenir à la première
application et de la fermer ??

J'en demande pas mal pour un vendredi n'est-ce pas?

Merci pour votre temps

Denys
Avatar
Denys
Bonjour Patrick et Denis (ça fait vraiment plaisir)

Merci beaucoup les gars, ça fonctionne comme un charme !!!

Bonne fin de semaine

Denys