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

lancer une macro d'un autre classeur

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 !

nina71287

XLDnaute Occasionnel
Bonsoir à tous,

je galere tjrs avec mes plannings🙁

nouveau probléme : je souhaite lancer un macro ( du classeur planningagent) qui me met à jour mon planning depuis le classeur outil suivi. ci joint les deux fichiers:

Cijoint.fr - Service gratuit de dépôt de fichiers
Cijoint.fr - Service gratuit de dépôt de fichiers

le bout de code qui coince:
'Application.Run chemin & "\'planningagent.xslm'!maj_tab"

pour teste mon appli se loger en toto et taper mdp en minuscules et cliquer sur le premier bouton saisir les conges previsionnels. l'appli marche normalement (en tout cas chez moi oui🙂). mais si vous mettez Application.Run chemin & "\'planningagent.xslm'!maj_tab" vous aurez un message d'erreur sur le chemin. est ce que quelqu'un pourrait m'aider je bute dessus depuis ce matin😡 merci d'avance pour vos reponse bonne soirée
 
Re : lancer une macro d'un autre classeur

j'ai modifiée mon code du coup il atteint bien la macro de mon autre classeur

nomfichier = "planningagent.xlsm"
'Lancer les userforms
Windows(classeur).Activate
Workbooks("planningagent").Sheets("planningagent").Range("A2").Value = UserForm1.Lst_id
'*****************************code qui plante*****************************
Application.Run "'" & nomfichier & "'" & "!maj_tab"

mais elle plante

Sub maj_tab()
'tempsdeb = Timer
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
ThisWorkbook.Sheets("planningagent").[C4:AG15].Interior.ColorIndex = xlNone
ThisWorkbook.Sheets("planningagent").[C4:AG15].ClearContents
nblignes = Sheets("dem").Range("A1").CurrentRegion.Rows.Count
With Sheets("dem")
For e = 2 To nblignes
If .Cells(e, 1) = nom Then
If .Cells(e, 2) <> "" Then
jd = Day(.Cells(e, 2))
md = Month(.Cells(e, 2))
absence = .Cells(e, 4)
With Sheets("planningagent").Range("B4").Offset(md - 1, jd)
.Value = Sheets("dem").Cells(e, 6)
.Interior.ColorIndex = [couleurs].Find(absence, lookat:=xlWhole).Interior.ColorIndex
End With
End If
End If
Next e
End With
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = False
'tempsfin = Timer
'MsgBox Format(tempsfin - tempsdeb, "0.0") & " Secondes"
End Sub


message d'erreur "l'element portant ce nom est introuvable"
 
Re : lancer une macro d'un autre classeur

c bon j'ai trouvé il faut specifier le classeur a chaque fois en revanche c mon test pour verifier si un classeur est ouvert qui ne marche pas ce que je voudrais faire c'est si le classeur est deja ouvert on l'active sinon on l'ouvre si quelqu'un sait comment faire merci bcp bonne journée
 
- 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

Discussions similaires

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