Bonjour,
Merci pour cette réponse. Mais j'ai un message d'erreur "Erreur d'exécution '1004' : la méthode 'Range' de l'objet '_Worksheet' a échoué. Voici mon code : rech correspond à ma recherche sur la 13ème cellule à droite de la cellule active et AM1:AP1 sont les cellules qui contiennent ma liste de mots recherchés. Si je trouve un des mots et que la 22ème cellule à droite de la cellule active cotient '12' je mets ces deux cellules (13ème et 22ème) en Vert Pale et j'affiche une infobulle.
With Feuil1.Range("AM1:AP1")
Set rech = .Find(Range(ActiveCell.Offset(0, 13)).Value, LookIn:=xlValues)
If Not rech Is Nothing And (ActiveCell.Offset(0, 22) Like "12") Then
ActiveCell.Offset(0, 22).Select
Application.Run "ThisWorkbook.VertPale"
'Dévalide les messages d'erreur
Selection.Validation.Delete
'Affiche le message d'erreur
Erreur = "Nature juridique incompatible avec le nom"
With Selection.Validation
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputMessage = Erreur
.ShowInput = True
.ShowError = True
End With
ActiveCell.Offset(0, -9).Select
Application.Run "ThisWorkbook.VertPale"
'Dévalide les messages d'erreur
Selection.Validation.Delete
'Affiche le message d'erreur
Erreur = "Cf. nature juridique = " & ActiveCell.Offset(0, 9).Value
With Selection.Validation
.Add Type:=xlValidateInputOnly, AlertStyle:=xlValidAlertStop, Operator:=xlBetween
.IgnoreBlank = True
.InCellDropdown = True
.InputMessage = Erreur
.ShowInput = True
.ShowError = True
End With
'Taille de la colonne à 35
Selection.ColumnWidth = 35
ActiveCell.Offset(0, -13).Select
Application.Run "ThisWorkbook.Violet"
End If
End With