Bonjour à tous.
Je débute sur vba et je bloque depuis plusieurs jours sur ma macro. Je sollicite donc votre aide car je ne trouve rien dans les différents forum.
J'exécute une macro automatique lorsque certaine cellule de mon fichier change de valeur. ça fonctionne bien mais le problème apparaît lorsque je supprime le contenu de cette cellule pour avoir une fichier vierge.
Voici ma macro sur la Feuil1 :
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Area As Range
If ActiveWorkbook.Worksheets(1).Range("H1").Value = "ERCK" Then
Set Area = Range("A41:K41,U41:Y41")
ElseIf ActiveWorkbook.Worksheets(1).Range("H1").Value = "ERCS" Or ActiveWorkbook.Worksheets(1).Range("H1").Value = "ERCM" Or ActiveWorkbook.Worksheets(1).Range("H1").Value = "ERCR" Then
Set Area = Range("B37:J37,T37:X37")
End If
If Not Application.Intersect(Area, Range(Target.Address)) Is Nothing Then
Dim valeur, min As Variant
valeur = Target.Value
min = 150
If valeur = "" Then Exit Sub
'Si Hors-tolérance retouchable => Fiche de retouche Rugo
If valeur < min Then
'Message d'avertissement
CreateObject("WScript.Shell").Run "mshta.exe vbscript:close(CreateObject(""WScript.Shell"").Popup(""Rugosité Non-conforme. Veuillez remplir la fiche de retouche rugosité prévu à cet effet."",3,""Message d'avertissement!""))"
End If
End If
End Sub
Lorsque je supprime le contenu de mes cellules une erreur se produit sur la ligne : If valeur = "" Then
Je précise que mes cellules ("A41:K41,U41:Y41") sont des cellules fusionnées.
Est ce que quelqu'un voit d'où provient le problème?
Merci.