Correction macro excel

Résolu/Fermé
Utilisateur anonyme -  
 Utilisateur anonyme -
Bonjour,

Afin de changer automatiquement la couleur de la police d'une cellule selon sa valeur j'ai bidouillé à partir de d'autres macros celle là :

Private Sub Worksheet_Change(ByVal Target As Range)
Set MyPlage = Range("H2:M65536")
For Each cell In MyPlage
If cell.Value = "KO" Then
cell.Font.ColorIndex = 3
ElseIf cell.Value = "OK" Then
cell.Font.ColorIndex = 50
End If
Next
End Sub

Mais elle met vachement de temps pour s'exécuter, alors je l'ai modifiée ainsi :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim derlign As Integer
derlign = Range("H65536").End(xlUp).Row
Set MyPlage = Range("H2:M" & derlign)
For Each cell In MyPlage
If cell.Value = "KO" Then
cell.Font.ColorIndex = 3
ElseIf cell.Value = "OK" Then
cell.Font.ColorIndex = 50
End If
Next
End Sub

J'aimerai en fait qu'elle s'exécute quelque soit la cellule renseignée et non pas uniquement si la colonne H est renseignée ; comme la 1er. Mais là je ne sais pas quoi faire.

Pourriez-vous m'aider s'il vous plaît.

Merci d'avance

Elsie
A voir également:

2 réponses

Gord21 Messages postés 918 Date d'inscription   Statut Membre Dernière intervention   289
 
Bonjour,
Tu peux utiliser par exemple :
derlign = UsedRange.Rows.Count

@+
0
Utilisateur anonyme
 
ça marche parfaitement !
Merci
0