Pb d'ouverture d'un 2ème classeur pendant éxécution d'une macro

Le
jo-dou
Bonjour toutes et tous, excelliennes et excellien,

J'ai un petit soucis.

J'ai fait un classeur planning.xls, je lance par workbook open un
userform qui permet d'interroger le planning des gens par recherche en
cliquant sur l'initiale du nom de famille.
Ce classeur est sens rester ouvert en permanence l'accueil.

Mon problme c'est que lorsque le classeur planning est actif, que le
userform est affich l'cran, quand on veut ouvrir un autre
classeur par double clic il n'apparait pas.

Il faut fermer le classeur planning pour pouvoir ouvrir un autre
classeur ou ouvrir le classeur en lanant excel
par le menu dmarrer pui fichier ouvrir. ce qui n'est pas du plus
pratique.

J'ai beau chercher, je ne trouve rien sur ce problme mais peut tre
suis-je pass cot

Si quelqu'un a une ide ?

D'avance merci.

Jol

PS: j'ai dj vrifi les conseils trouvs sur
http://www.excelabo.net/xl/plantages.php#pasdoubleclic
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
papou
Le #4105481
Bonjour
Ton userform est-il chargé de façon modale ?

Cordialement
Pascal


Bonjour à toutes et à tous, excelliennes et excellien,

J'ai un petit soucis.

J'ai fait un classeur planning.xls, je lance par workbook open un
userform qui permet d'interroger le planning des gens par recherche en
cliquant sur l'initiale du nom de famille.
Ce classeur est sensé rester ouvert en permanence à l'accueil.

Mon problème c'est que lorsque le classeur planning est actif, que le
userform est affiché à l'écran, quand on veut ouvrir un autre
classeur par double clic il n'apparait pas.

Il faut fermer le classeur planning pour pouvoir ouvrir un autre
classeur ou ouvrir le classeur en lançant excel
par le menu démarrer pui fichier ouvrir. ce qui n'est pas du plus
pratique.

J'ai beau chercher, je ne trouve rien sur ce problème mais peut être
suis-je passé à coté

Si quelqu'un a une idée ?

D'avance merci.

Joël

PS: j'ai déjà vérifié les conseils trouvés sur
http://www.excelabo.net/xl/plantages.php#pasdoubleclic
jo-dou
Le #4105471
Merci pour ta rapidité

Excuses moi mais je ne sais pas ( je ne développe avec ces outils que
depuis peu de temps)

voilz mon workbook open :


Private Sub Workbook_Open()
Application.Visible = False
Set fso = CreateObject("Scripting.FileSystemObject")
wrépertoire = fso.GetParentFolderName(ActiveWorkbook.FullName)
If wrépertoire <> "K:1-outils et documents communsAccueilBase
Planning" Then
Chx_lettre.Show
Else
MsgBox "Pour utiliser cet outil, vous devez copier planning.xls" &
Chr(10) & "sur votre espace personnel (F:)"
End If
wb = ActiveWorkbook.Name
Workbooks(wb).Close SaveChanges:lse
Application.Quit
End Sub


joël
jo-dou
Le #4105451
Est ce suffisant comme info?
jo-dou
Le #4105421
J'ai trouvé l'info sur show modal sur ce forum
si je mets en non modal (show 0), mon userform ne fait que s'afficher
et disparaitre sans attendre la réponse de l'utilisateur.

as tu une autre piste ?

merci joël
jo-dou
Le #4105401
SVP ça fait une semaine que je galère la dessus !!!!
MichDenis
Le #4105371
Tu dois rendre visible en tout temps ton formulaire.
Pour ce faire, ajoute le code suivant dans ton formulaire
Évidemment ton formulaire doit être ouvert dans une fenêtre non modale.


En haut de ton formulaire, déclaration des constantes et API
'------------------------
Private Const SWP_NOMOVE = &H2
Private Const SWP_NOSIZE = &H1
Private Const SWP_NOACTIVATE = &H10
Private Declare Function SetWindowPos Lib "User32" _
(ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _
ByVal X As Long, ByVal Y As Long, ByVal cx As Long, _
ByVal cy As Long, ByVal wFlags As Long) As Long

Private Declare Function FindWindowA Lib "User32" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
'------------------------


Private Sub UserForm_Initialize()
SetWindowPos FindWindowA("ThunderDFrame", Me.Caption), _
-1, 0, 0, 0, 0, 3
End Sub





Bonjour à toutes et à tous, excelliennes et excellien,

J'ai un petit soucis.

J'ai fait un classeur planning.xls, je lance par workbook open un
userform qui permet d'interroger le planning des gens par recherche en
cliquant sur l'initiale du nom de famille.
Ce classeur est sensé rester ouvert en permanence à l'accueil.

Mon problème c'est que lorsque le classeur planning est actif, que le
userform est affiché à l'écran, quand on veut ouvrir un autre
classeur par double clic il n'apparait pas.

Il faut fermer le classeur planning pour pouvoir ouvrir un autre
classeur ou ouvrir le classeur en lançant excel
par le menu démarrer pui fichier ouvrir. ce qui n'est pas du plus
pratique.

J'ai beau chercher, je ne trouve rien sur ce problème mais peut être
suis-je passé à coté

Si quelqu'un a une idée ?

D'avance merci.

Joël

PS: j'ai déjà vérifié les conseils trouvés sur
http://www.excelabo.net/xl/plantages.php#pasdoubleclic
jo-dou
Le #4105361
Super Michdenis,

Je peux ouvrir un autre classeur sans problème. Tu me sauves.

Il me reste un deuxième petit problème avec ta solution (mais c'est
moins génant) :

Le userform se ferme lorsque je ferme excel sur le 2ème classeur. As
tu une autre parade?



Joël
MichDenis
Le #4105351
| Le userform se ferme lorsque je ferme excel sur le 2ème classeur. As
| tu une autre parade?

Si tu fermes l'application Excel, C'est sûr que le formulaire va se fermer...
c'est normal... c'est impossible d'afficher le formulaire sans que l''application
Excel soit ouverte. Si tu fermes seulement le deuxième classeur que tu as
ouvert dans la même instance de l'application, le formulaire demeure toujours
afficher.
Patrick Penet
Le #4105341
Il faut que la première instance d'Excel soit
IgnoreRemoteRequest = True

Ainsi l'autre classeur s'ouvre dans une instance
différente qui peut être fermée indépendamment.

P.

"MichDenis"

| Le userform se ferme lorsque je ferme excel sur le 2ème classeur. As
| tu une autre parade?

Si tu fermes l'application Excel, C'est sûr que le formulaire va se fermer...
c'est normal... c'est impossible d'afficher le formulaire sans que l''application
Excel soit ouverte. Si tu fermes seulement le deuxième classeur que tu as
ouvert dans la même instance de l'application, le formulaire demeure toujours
afficher.





MichDenis
Le #4105291
Si les classeurs que l'usagers ouvrent doivent avoir une interaction
avec le classeur de base de l'application, je ne conseillerais
surtout pas que ces classeurs s'ouvrent dans une instance
indépendante ...

Ceci étant, le demandant choisira la manière dont il veut
procéder !


"Patrick Penet" 4576f166$0$21149$
Il faut que la première instance d'Excel soit
IgnoreRemoteRequest = True

Ainsi l'autre classeur s'ouvre dans une instance
différente qui peut être fermée indépendamment.

P.

"MichDenis"

| Le userform se ferme lorsque je ferme excel sur le 2ème classeur. As
| tu une autre parade?

Si tu fermes l'application Excel, C'est sûr que le formulaire va se fermer...
c'est normal... c'est impossible d'afficher le formulaire sans que l''application
Excel soit ouverte. Si tu fermes seulement le deuxième classeur que tu as
ouvert dans la même instance de l'application, le formulaire demeure toujours
afficher.





Publicité
Poster une réponse
Anonyme