Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

vba: appel de procédure à partir d'un autre fichier

  • Initiateur de la discussion Initiateur de la discussion bernaroff
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

B

bernaroff

Guest
coucou tout le monde
J'ai un gros problème, j'ai créer une procédure qui appel un fichier .txt et qui rassemble et analyse les donées de ce .txt dans un nouveau fihier excel. Seulement dans la macro d'origine, j'ai une procédure qui fait intervenir le fichier excel créé.
Ce que je souhaite faire c'est pouvoir lancer cette dernière procédure dans le nouveau fichier excel sans avoir à rajouter à chaque fois la nouvelle procédure dans le excel dernièrement créé.

Je me demandé si il était possible de créer un bouton dans la procédure d'origine qui s'afficherait dans le nouveau fichier mais qui lancerait la procédure présente dans la macro d'origine, ou de mettre une ligne de code (quelque part dans la macro d'origine) qui lancerait la dernière procédure une fois le nouveau fichier créé dns le nouveau fichier créé.

Je sais pas si je suis clair, mais si quelqu'un pouvait m'aider, ça me débloquerait grandement.

Cdt
Bernaroff
 
Re : vba: appel de procédure à partir d'un autre fichier

Merci pour ton aide, malheureusement j'avais déjà vu ce post, et il ne marche pas, et ce n'est pas non plus exactement ce que je souhaite faire
peut être est-il possible dans une procédure d'ouvrir un des modules dans le fichier excel qui est créé à partir du .txt sans avoir à toucher à ce fameux fichier créé ?

J'ai mon fichier Cdc reader_2.0 mais qui n'affiche rien (ce n'est pas son but) en ouverture il demande de lancer un fichier .txt et il transmet les données dans un fichier excel qui se créé (dont le nom change en fonction du .txt). Seulement un de mes modules de Cdc reader2.0 doit se lancer tout seul mais sur le fichier excel créé en utilisant les données du excel créé.

Je sais pas si c'est possible mais il me semble qu'on peut tout faire avec excel donc je perds pas espoir que quelqu'un aie la réponse.

Merci
 
Re : vba: appel de procédure à partir d'un autre fichier

Bonjour bernaroff, cc🙂

pas tout compris, à priori pas de macro présente dans un fichier texte.... regarde ceci, à partir d'une macro contenue dans le classeur x lance une macro nommée "test" dans le classeur nommé "classeur1.xls", les 2 classeurs doivent être ouverts ...
Code:
Application.Run "classeur1.xls!test"

bonne journée
@+
 
Re : vba: appel de procédure à partir d'un autre fichier

Bonjour Pierrot 93
où places tu cette commende? au début de la procédure test, dans ThisWorkBook, ou dans une autre procédure. Je pense que c'est ce dont j'ai besoin, mais comment faire si le nom du classeur1 change à chaque ouverture ?

merci
 
Re : vba: appel de procédure à partir d'un autre fichier

Re,

où places tu cette commende?
Au moment ou tu veux la lancer !!! A priori à placer dans un module standard... A voir selon ton projet...
mais comment faire si le nom du classeur1 change à chaque ouverture ?

peut être comme ceci :
Code:
Application.Run ActiveWorkbook.Name & "!test"
ou bien en utilisant "workbooks", sans plus de détails.... difficile à dire...
 
Re : vba: appel de procédure à partir d'un autre fichier

merci beaucoup, c'est exactement ce que je voulais, mais il me manque encore une petite chose, désolé, comment faire pour que le classeur ouvert (classeur 1 dans l'exemple) soit le classeur actif pour la macro ??
(problème avec les appels comme Feuil2 etc...)
 
Re : vba: appel de procédure à partir d'un autre fichier

en fait l'erreur vient de ça :
erreur 424 objet requis

For nbcells = 2 To 750
If Not IsEmpty(Feuil2.Cells(nbcells, 1).Value) Then (sur cette ligne)
m = m + 1
End If
Next nbcells

ça correspond à quoi exactement comme erreur puisque la programmation de cette commande me paraît juste
et en effet le classeur en activité est le bon puisque le début s'exécute bien dans le bon classeur
merci pour ton aide
 
Re : vba: appel de procédure à partir d'un autre fichier

le nom de la feuille 2 est Points 10, penses tu que je devrais donner le nom de la feuille directement ? (et si c'est le cas comment le coder) ?
 
Re : vba: appel de procédure à partir d'un autre fichier

c'est bon j'ai trouvé et ç a marche parfaitement
Merci pour tout et pour ton temps

Cdt
Bernaroff
 
Dernière modification par un modérateur:
Re : vba: appel de procédure à partir d'un autre fichier

Re,

Alors il faut ptrésicer le nom de la feuille et éventuellement le classeur si ce n'est pas celui actif :
Code:
If Not IsEmpty(Workbooks("nomclasseur.xls").Sheets("NomFeuille").Cells(nbcells, 1).Value) Then (sur cette ligne)

@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
192
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…