Bonjour le forum
Dans une feuille de calcule chaque cellule est remplie soit par la lettre J,S OU N... Mais il y a des combinaison qui sont indésirable ppour les trouver Voici une macro qui rougie les bordures des cellules "J" si la cellule qui la précède est "N" ou "S". Comme j'ai plusieurs critères autre que "N" ou "S" j'aimerai pouvoir simplifier l'écriture de la macro. Peut-être en créant des variable? Je ne le sais pas! De plus il y a le problème des majuscules minuscules. Si la cellule précédente est petit "n" ou petit "s", la macro ne fonctionne plus.
Merci beaucoup pour votre aide
Sub Audit()
ActiveSheet.Unprotect
Dim acell As Object
Range(Selection.Address).Select
For Each acell In Selection
'JOUR
If acell = "J" And acell.Offset(0, -1) = "N" Then
With acell.Borders(xlEdgeLeft)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeTop)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeBottom)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeRight)
.ColorIndex = 3
End With
End If
If acell = "j" And acell.Offset(0, -1) = "N" Then
With acell.Borders(xlEdgeLeft)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeTop)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeBottom)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeRight)
.ColorIndex = 3
End With
End If
Next
Range("B3").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
Dans une feuille de calcule chaque cellule est remplie soit par la lettre J,S OU N... Mais il y a des combinaison qui sont indésirable ppour les trouver Voici une macro qui rougie les bordures des cellules "J" si la cellule qui la précède est "N" ou "S". Comme j'ai plusieurs critères autre que "N" ou "S" j'aimerai pouvoir simplifier l'écriture de la macro. Peut-être en créant des variable? Je ne le sais pas! De plus il y a le problème des majuscules minuscules. Si la cellule précédente est petit "n" ou petit "s", la macro ne fonctionne plus.
Merci beaucoup pour votre aide
Sub Audit()
ActiveSheet.Unprotect
Dim acell As Object
Range(Selection.Address).Select
For Each acell In Selection
'JOUR
If acell = "J" And acell.Offset(0, -1) = "N" Then
With acell.Borders(xlEdgeLeft)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeTop)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeBottom)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeRight)
.ColorIndex = 3
End With
End If
If acell = "j" And acell.Offset(0, -1) = "N" Then
With acell.Borders(xlEdgeLeft)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeTop)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeBottom)
.ColorIndex = 3
End With
With acell.Borders(xlEdgeRight)
.ColorIndex = 3
End With
End If
Next
Range("B3").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub