Bonjour Modeste,
Tout d'abord je tiens à préciser que ceci est un exemple qui est très loin de la version originale qui serait très pénible à décortiquer pour m'aider, j'ai donc essayer au mieux de faire quelque chose de simple traduisant mon problème (cela peut expliquer que mon tableau et les macros REMPLIRX paraissent inutiles).
Alors oui, j'imagine que cela demande de plus amples explications, alors en faite je voudrais ceci :
- Si dans la cellule F7 le nom de l'étalon comporte le terme 001.16 alors je déclenche la macro ETALON12
-Si dans la cellule F7 le nom de l'étalon comporte le terme 001.12 alors je déclenche la macro ETALON16
etc...
La présence du menu déroulant qui déclenche les macros REMPLIR 1,2,3 est dut au fait que je suppose que la présence de plusieurs macro pourrait créer des soucis...
On m'a proposé la solution suivante...
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("I3")) Is Nothing Then Exit Sub
If Target.Address = "$I$3" Then
If [I3] = "1" Then REMPLIR1
If [I3] = "2" Then REMPLIR2
If [I3] = "3" Then REMPLIR3
End Sub
Private Sub Worksheet_Calculate()
If Range("F7").Value Like "*001.16*" Then Module1.ETALON12
If Range("F7").Value Like "*001.12*" Then Module1.ETALON16
If Range("F7").Value = "kaz 004.04" Then Module1.ETALON3
If Range("F7").Value = "jefi4 005.04" Then Module1.ETALON4
End Sub
Qui marche très bien dans ce cas la (mis à part un message d'erreur bloc End If sans If).
Cependant sur la version originale du fichier en adaptant le code toutes mes macros contiennent des erreurs à chaque lignes du genre :
Erreur 1004
Impossible de définir la propriété NumberFormat de la classe Range
ou encore
Erreur d'execution 1004
La méthode Select de la classe Range a échoué
J'ai pourtant juste changé les cellules et macro correspondantes
Je reste disponible pour autres précision nécessaires.