[VBA] Centralisation des macros sur un réseau d'entreprise

Fermé
yoyoyo91 Messages postés 14 Date d'inscription vendredi 30 septembre 2016 Statut Membre Dernière intervention 5 octobre 2016 - 4 oct. 2016 à 17:25
yoyoyo91 Messages postés 14 Date d'inscription vendredi 30 septembre 2016 Statut Membre Dernière intervention 5 octobre 2016 - 5 oct. 2016 à 10:46
Bonjour,

Je vous contacte car j'aimerais centraliser mes macros sur le réseau de mon entreprise, je m'explique.

Actuellement, chaque fichier contient la macro (Macro_Liste) et lorsqu'une modification doit être effectuée je dois modifier tous les fichiers Excel. Ce que je vousdrais c'est stocker ma macro et lorsque je modifie un fichier "principal" modifier tous les autres fichiers.

Je fonctionne actuellement de cette façon qui me pose quelques problèmes parfois (non suppression de la macro initiale et création de doublon dans le fichier Excel).

Private Sub Workbook_Open()

'== Mise à jour des macros ==

Dim Dossier, Modulos As String
Dim vbCom As Object

Call ScreenUpdating_Off 'Accélération de l'éxécution des macros

Dossier = "Lien"

If Dir(Dossier & "Macro_Liste.bas") = "" Then
Else
    On Error Resume Next
    With ActiveWorkbook.VBProject.VBComponents
    .Remove .Item("Macro_Liste")
    .Remove .Item("Macro_Liste1")
    End With
    On Error GoTo 0
    wbk_active = ActiveWorkbook.Name
    Modulos = Dossier & "Macro_Liste.bas"
    With Workbooks(wbk_active).VBProject
    .VBComponents.Import Modulos
    End With

End If

Call Macro_MiseAJour

'== Fin de mise à jour ==

On Error Resume Next
Call Macro_Liste.Macro_ListeCommune
Call Macro_Liste1.Macro_ListeCommune
On Error GoTo 0

Call ScreenUpdating_On 'Arrêt de l'accélaration de l'éxécution des macros

End Sub

2 réponses

cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
4 oct. 2016 à 18:15
0
yoyoyo91 Messages postés 14 Date d'inscription vendredi 30 septembre 2016 Statut Membre Dernière intervention 5 octobre 2016
5 oct. 2016 à 09:06
Salut,

Idée intéressante, le problème c'est que en cas de panne réseau je dois pouvoir utiliser ma macro. Donc cette option ne me semble pas adaptée.

Mais merci quand même
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729
5 oct. 2016 à 10:25
Je ne vois pas le rapport, ta macro tu peux l'utiliser comme avant dans tes classeurs. Ce procédé permet de lancer ta macro à distance si tu le désires, c'est tout .

A toi de voir!
0
yoyoyo91 Messages postés 14 Date d'inscription vendredi 30 septembre 2016 Statut Membre Dernière intervention 5 octobre 2016
5 oct. 2016 à 10:34
Je ne te suis pas trop du coup, je n'ai paut être pas compris le principe.

Lorsque j'éxécute ma macro d'appel sur mon document A fesant référence à mon document B (qui contient la Macro_Liste) que ce passe-t-il si mon document B n'est pas accessible dû à une panne du réseau ?
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 729 > yoyoyo91 Messages postés 14 Date d'inscription vendredi 30 septembre 2016 Statut Membre Dernière intervention 5 octobre 2016
5 oct. 2016 à 10:45
En cas de panne de réseau, que faisais-tu auparavant?
Tu fais la même chose.
0
yoyoyo91 Messages postés 14 Date d'inscription vendredi 30 septembre 2016 Statut Membre Dernière intervention 5 octobre 2016
5 oct. 2016 à 10:46
Nop, je mettais à jour la macro dans le fichier donc si jamais j'ai une panne réseau on peut quand même utiliser la macro existante (non mise à jour).
0