Onglet de couleur suivant Valeur dans une colonne
Résolu
69nounours
Messages postés
5
Statut
Membre
-
69nounours Messages postés 5 Statut Membre -
69nounours Messages postés 5 Statut Membre -
Bonjour,
je souhaiterais mettre l'onglet de la couleur rouge si dans ma colonne K j'ai une valeur Attente ou attente
alors j'ai utilisé sa
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If (ActiveSheet.Cells(5, 11) = "Attente" Or ActiveSheet.Cells(6, 11) = "Attente" Or ActiveSheet.Cells(7, 11) = "Attente" Or ActiveSheet.Cells(8, 11) = "Attente" Or ActiveSheet.Cells(9, 11) = "Attente" Or ActiveSheet.Cells(10, 11) = "Attente" Or ActiveSheet.Cells(11, 11) = "Attente" Or ActiveSheet.Cells(12, 11) = "Attente" Or ActiveSheet.Cells(13, 11) = "Attente" Or ActiveSheet.Cells(14, 11) = "Attente" Or ActiveSheet.Cells(15, 11) = "Attente" Or ActiveSheet.Cells(16, 11) = "Attente" Or ActiveSheet.Cells(17, 11) = "Attente" Or ActiveSheet.Cells(18, 11) = "Attente" Or ActiveSheet.Cells(19, 11) = "Attente" Or ActiveSheet.Cells(20, 11) = "Attente" Or ActiveSheet.Cells(21, 11) = "Attente" Or ActiveSheet.Cells(22, 11) = "Attente" Or ActiveSheet.Cells(23, 11) = "Attente" Or ActiveSheet.Cells(24, 11) = "Attente" Or ActiveSheet.Cells(25, 11) = "Attente" Or ActiveSheet.Cells(26, 11) = "Attente" Or ActiveSheet.Cells(27, 11) = "Attente" Or ActiveSheet.Cells(28, 11) = "Attente") Then
ActiveSheet.Tab.ColorIndex = 3 'rouge
Else
ActiveSheet.Tab.ColorIndex = 10 'vert
End If
End Sub
mais je me vois pas faire cela sur 200 lignes
merci d'avance de votre aide
je souhaiterais mettre l'onglet de la couleur rouge si dans ma colonne K j'ai une valeur Attente ou attente
alors j'ai utilisé sa
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If (ActiveSheet.Cells(5, 11) = "Attente" Or ActiveSheet.Cells(6, 11) = "Attente" Or ActiveSheet.Cells(7, 11) = "Attente" Or ActiveSheet.Cells(8, 11) = "Attente" Or ActiveSheet.Cells(9, 11) = "Attente" Or ActiveSheet.Cells(10, 11) = "Attente" Or ActiveSheet.Cells(11, 11) = "Attente" Or ActiveSheet.Cells(12, 11) = "Attente" Or ActiveSheet.Cells(13, 11) = "Attente" Or ActiveSheet.Cells(14, 11) = "Attente" Or ActiveSheet.Cells(15, 11) = "Attente" Or ActiveSheet.Cells(16, 11) = "Attente" Or ActiveSheet.Cells(17, 11) = "Attente" Or ActiveSheet.Cells(18, 11) = "Attente" Or ActiveSheet.Cells(19, 11) = "Attente" Or ActiveSheet.Cells(20, 11) = "Attente" Or ActiveSheet.Cells(21, 11) = "Attente" Or ActiveSheet.Cells(22, 11) = "Attente" Or ActiveSheet.Cells(23, 11) = "Attente" Or ActiveSheet.Cells(24, 11) = "Attente" Or ActiveSheet.Cells(25, 11) = "Attente" Or ActiveSheet.Cells(26, 11) = "Attente" Or ActiveSheet.Cells(27, 11) = "Attente" Or ActiveSheet.Cells(28, 11) = "Attente") Then
ActiveSheet.Tab.ColorIndex = 3 'rouge
Else
ActiveSheet.Tab.ColorIndex = 10 'vert
End If
End Sub
mais je me vois pas faire cela sur 200 lignes
merci d'avance de votre aide
A voir également:
- Onglet de couleur suivant Valeur dans une colonne
- Déplacer une colonne excel - Guide
- Trier une colonne excel - Guide
- Colonne word - Guide
- Rouvrir onglet fermé chrome - Guide
- Boite a couleur - Télécharger - Divers Photo & Graphisme
3 réponses
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
bonsoir, un exemple:
Option Explicit
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim nligne As Long
Dim rouge As Boolean
rouge = False
For nligne = 5 To 200
If ActiveSheet.Cells(nligne, 11) = "Attente" Then
rouge = True
Exit For
End If
Next nligne
If rouge Then
ActiveSheet.Tab.ColorIndex = 3 'rouge
Else
ActiveSheet.Tab.ColorIndex = 10 'vert
End If
End Sub
Bonjour,
je te remercie yg_be cela marche nickel
une question supplémentaire
je voudrais que la cellule qui comporte attente me serve d'horodateur.
en gros sur la colonne précédente j'ai une date et je voudrais que ma cellule reste orange si la date de la colonne précédente est sous les 15 jours sinon que ma case passe en rouge
possible?
merci d'avance
je te remercie yg_be cela marche nickel
une question supplémentaire
je voudrais que la cellule qui comporte attente me serve d'horodateur.
en gros sur la colonne précédente j'ai une date et je voudrais que ma cellule reste orange si la date de la colonne précédente est sous les 15 jours sinon que ma case passe en rouge
possible?
merci d'avance
Bonsoir, c'est trè possible. Un peu comme ceci (non testé):
Si la date de la colonne 10 est plus ancienne que 15 jours avant maintenant, alors la case de la colonne 11 devrait changer en rouge.
Option Explicit
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim nligne As Long
Dim rouge As Boolean
rouge = False
For nligne = 5 To 200
If ActiveSheet.Cells(nligne, 11) = "Attente" Then
if (ActiveSheet.Cells(nligne, 10) <now() - 15 ) Then
ActiveSheet.Cells(nligne, 11).Interior.ColorIndex = 3
end if
rouge = True
Exit For
End If
Next nligne
If rouge Then
ActiveSheet.Tab.ColorIndex = 3 'rouge
Else
ActiveSheet.Tab.ColorIndex = 10 'vert
End If
End Sub
Si la date de la colonne 10 est plus ancienne que 15 jours avant maintenant, alors la case de la colonne 11 devrait changer en rouge.