Bonsoir Julien, bonsoir le forum,
Essaie avec la macro événementielle Change ci-dessous, à placer* dans l'onglet concerné :
Private Const CH As String = "C:\BUREAU\BASE_DE_DONNEE\"
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$A$3" Then Exit Sub
Select Case Target.Value
Case "MW"
Workbooks.Open (CH & "donn_KW.xls")
Case "SP"
Workbooks.Open (CH & "donn_SP.xls")
End Select
End Sub
*
• Copie le code
• Clic du bouton droit dans l'onglet concerné (en bas)
• Option Visualiser le code
• Coller le code copié
• la macro s'exécute automatiquement à chaque changement dans la cellule A3 de l'onglet
Bonsoir le fil, bonsoir le forum,
Si chaque personne a son propre fichier et que celui-ci est toujours donn_ + ses initiales (dans ce cas ton exemple n'était pas très malin avec MW et KW...) on pourrait faire :
Private Const CH As String = "C:\BUREAU\BASE_DE_DONNEE\"
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$A$3" Then Exit Sub
On Error Resume Next
Workbooks.Open (CH & "donn_" & Target.Value & ".xls")
End Sub