AlainSAM1982
XLDnaute Nouveau
Bonjour,
Je cherche une façon de mettre à jour mes différents classeurs Excel à partir d'un classeur de macro. Jusqu'à présent, j'ai trouvé 2 façons possibles, mais elles ne sont pas optimales.
La première consiste à mettre le code de ThisWorkbook dans Workbook_Deactivate. Ça fonctionne bien, par contre, lorsque mon usagé va ouvrir un second classeur sans retourner préalablement dans celui des macro (Particuliers 2019.xlsm), il y a un problème.
La seconde consiste de mettre le même code dans Workbook_Open de chacun des classeurs ... j'aimerais éviter cette option pour plein de raison.
Si vous avez des idées, elles sont bienvenues.
Merci et bonne journée!
Private Sub Workbook_Deactivate()
'Mise à jour automatique
On Error GoTo FinMAJAuto
If ActiveWorkbook.Worksheets("Data").Range("F1").Value <= 5 And ActiveWorkbook.Worksheets("Data").Range("F1").Value >= 1 Then
If ActiveWorkbook.Worksheets("Data").Range("B1").Value < Workbooks("Particulier 2019.xlsm").Worksheets("A").Range("G1").Value And ActiveWorkbook.Worksheets("Data").Range("B1").Value >= 1 Then
Application.Run ("'Particulier 2019.xlsm'!MAJAuto")
End If
End If
Exit Sub
FinMAJAuto:
End Sub
Je cherche une façon de mettre à jour mes différents classeurs Excel à partir d'un classeur de macro. Jusqu'à présent, j'ai trouvé 2 façons possibles, mais elles ne sont pas optimales.
La première consiste à mettre le code de ThisWorkbook dans Workbook_Deactivate. Ça fonctionne bien, par contre, lorsque mon usagé va ouvrir un second classeur sans retourner préalablement dans celui des macro (Particuliers 2019.xlsm), il y a un problème.
La seconde consiste de mettre le même code dans Workbook_Open de chacun des classeurs ... j'aimerais éviter cette option pour plein de raison.
Si vous avez des idées, elles sont bienvenues.
Merci et bonne journée!
Private Sub Workbook_Deactivate()
'Mise à jour automatique
On Error GoTo FinMAJAuto
If ActiveWorkbook.Worksheets("Data").Range("F1").Value <= 5 And ActiveWorkbook.Worksheets("Data").Range("F1").Value >= 1 Then
If ActiveWorkbook.Worksheets("Data").Range("B1").Value < Workbooks("Particulier 2019.xlsm").Worksheets("A").Range("G1").Value And ActiveWorkbook.Worksheets("Data").Range("B1").Value >= 1 Then
Application.Run ("'Particulier 2019.xlsm'!MAJAuto")
End If
End If
Exit Sub
FinMAJAuto:
End Sub