Bonjour à tous,
Je souhaite utiliser une macro complémentaire pour mettre à jour mes anciens fichiers Excel. En gros j'utilise un fichier maquette avec lequel j'ai déjà créé pas mal de fichiers. Aujourd'hui mon fichier maquette évolu. A chaque ouverture d'un ancien fichier j'aimerais que ma macro complémentaire le détecte et me propose la mise à jour.
J'ai déjà réalisé la macro, elle fonctionne, mais lorsque je l'utilise en complément elle ne s'excute pas car elle fait le contrôle de version sur mon fichier xla au lieu de la faire sur mon fichier ouvert.
Voici les quelques lignes :
Voila, avez vous une astuce pour que ma fonction s'execute sur le dossier qui s'ouvre et non pas sur mon fichier macro complémentaire ?
Merci
A+
Je souhaite utiliser une macro complémentaire pour mettre à jour mes anciens fichiers Excel. En gros j'utilise un fichier maquette avec lequel j'ai déjà créé pas mal de fichiers. Aujourd'hui mon fichier maquette évolu. A chaque ouverture d'un ancien fichier j'aimerais que ma macro complémentaire le détecte et me propose la mise à jour.
J'ai déjà réalisé la macro, elle fonctionne, mais lorsque je l'utilise en complément elle ne s'excute pas car elle fait le contrôle de version sur mon fichier xla au lieu de la faire sur mon fichier ouvert.
Voici les quelques lignes :
Private Sub Workbook_Open()
... 'ici il y a une barre perso qui fonctionne
'Là j'appel ma fonction
Call controle
Note : ma fonction MAJdossier me permet la mise à jour (elle fonctionne bien).Sub controle()
If Sheets(1).Name = "DI" And Sheets("DE").Range("H1") < "1.20" Then
Select Case MsgBox("L'outil n'est pas à jour pour votre dossier." & Chr(10) & _
"Voulez vous le mettre à jour ?", vbYesNo + vbCritical, "Mise à jour du fichier")
Case vbYes
Call MAJdossier
MsgBox "Votre fichier est à jour." & Chr(10) & _
"Néanmoins un contrôle rapide est nécessaire pour" & Chr(10) & _
"vous assurez qu'aucune information n'a disparu.", vbInformation, "Mise à jour du fichier"
Case vbNo
MsgBox "Vous pourrez mettre à jour votre fichier à la prochaine ouverture.", vbInformation, "Mise à jour du fichier"
End Select
End If
End Sub
Voila, avez vous une astuce pour que ma fonction s'execute sur le dossier qui s'ouvre et non pas sur mon fichier macro complémentaire ?
Merci
A+