Chargé un userform d'un autre classeur

ldexplorer

XLDnaute Junior
Bonsoir à tous !

J'ai à novueau besoin de votre aide. Je suis bloqué depuis la fin d'après midi maintenant sans trouver la solution.

J'utilise le code d'un nommé STephane pour ouvrir à partir de l'userform menu du classeur "Gestion des hébergements" l'userform UsGraphique du classeur "Demandes".

Code:
Sub Load_the_form()
'your code here
ChDir "C:\My documents\"
application.run "Demandes.xls!Load_My_form"
'your code here
end Sub

Sub Load_My_form()
UsGraphique.show
end Sub


Gros problème pour moi. Je coince et ne trouve pas la solution. Excel m'indique
'Erreur d'exécution9. L'indice n'appartient pas à la sélection'. Ca coince dès lors que j'ai le classeur "Gestion des hébergements" ouvert. J'ai testé la macro 'sub Load_My_form() et elle marche tant que le classeur dont je parle n'est pas ouvert.

Je ne sais pas quoi faire.

Pouvez vous m'aider. Merci. Je ne peux plus avancer dans mon projet.
Je vous remercie tous beaucoup d'avances.
 

JYLL

Nous a quitté
Repose en paix
Re : Chargé un userform d'un autre classeur

Bonsoir ldexplorer et le forum,

Je pense que lorsque tu as deux classeurs d'ouverts, Excel travail avec le premier ouvert et si tu lances une macro du deuxième il faut qu'elle face référence au nom de classeur dans lequel tu veux exécuter ta macro. Alors en faisant outils macro, tu cliques sur ta macro et tu l'attribues à tous les classeurs.

Fait un essai pour tester dans ton contexte.
 

ldexplorer

XLDnaute Junior
Re : Chargé un userform d'un autre classeur

Merci de m'avoir répondu aussi tardivement dans la nuit,

mais ce n'est pas le problème. Les macros sont attribués à l'ensemble des classeurs.

Je n'ai toujours pas trouvé la solution.

Si quelqu'un veut bien encore se pencher sur mon problème. Merci d'avance.

A tous bon samedi ...
 

ldexplorer

XLDnaute Junior
Re : Chargé un userform d'un autre classeur

Ouf ! Je crois avoir la solution. Je l'ai testé et ca semble marcher. Je vous le mets si ca peut rendre service à quelqu'un par la suite.


Macro à mettre dans le classeur de départ (celui qui appel l'userform)
Code:
Sub Btevolddes()
  OUV = 0
      For t = 1 To Workbooks.Count
      If Workbooks(t).Name = "Demandes.xls" Then OUV = 1
      Next t
      Application.Run "Demandes.xls!Load_Demandes"
      If OUV = 0 Then
    Workbooks.Open Filename:= _
        "C:\Documents and Settings\Administrateur\Bureau\Gestion des hébergements\Données\Demandes.xls"
    Application.Run "Demandes.xls!Load_Demandes"
    Userfconsultation.Hide
End If
End Sub

Macro à mettre dans le classeur qui contient l'userform
Code:
Sub Load_Demandes()
UserForm1.Show
ActiveWindow.DisplayWorkbookTabs = False
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 469
Messages
2 088 696
Membres
103 922
dernier inscrit
hhhh