J'ai une première condition qui s'applique sur toutes les cellules d'une
feuille qui m'affiche les cellules non protégées en intérieur jaune.
Je voudrais une deuxième condition qui m'affiche les caractères des
cellules d'une plage données en orange lorsque la valeur dans celles ci
est négative... mon souci est que lorsque j'applique la condition j'ai
alors toutes les cellules non protégées de la feuille qui sont en
caractères oranges.
Je voudrais que les valeurs de la plage J14:J20 soit bien en caractères
de couleur orange si inférieure à 0 ET avoir en couleur de fond
d'intérieur des cellules du jaune pour les cellules non protégées.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
DanielCo
Bonjour, Quelle est ta version d'Excel ? Cordialement. Daniel Le 09/11/2015, HD a supposé :
Bonjour,
J'ai une première condition qui s'applique sur toutes les cellules d'une feuille qui m'affiche les cellules non protégées en intérieur jaune.
Je voudrais une deuxième condition qui m'affiche les caractères des cellules d'une plage données en orange lorsque la valeur dans celles ci est négative... mon souci est que lorsque j'applique la condition j'ai alors toutes les cellules non protégées de la feuille qui sont en caractères oranges.
Je voudrais que les valeurs de la plage J14:J20 soit bien en caractères de couleur orange si inférieure à 0 ET avoir en couleur de fond d'intérieur des cellules du jaune pour les cellules non protégées.
Je dois louper quelque chose...
Merci d'avance pour votre aide.
Cordialement,
@+ HD
Bonjour,
Quelle est ta version d'Excel ?
Cordialement.
Daniel
Le 09/11/2015, HD a supposé :
Bonjour,
J'ai une première condition qui s'applique sur toutes les cellules d'une
feuille qui m'affiche les cellules non protégées en intérieur jaune.
Je voudrais une deuxième condition qui m'affiche les caractères des cellules
d'une plage données en orange lorsque la valeur dans celles ci est
négative... mon souci est que lorsque j'applique la condition j'ai alors
toutes les cellules non protégées de la feuille qui sont en caractères
oranges.
Je voudrais que les valeurs de la plage J14:J20 soit bien en caractères de
couleur orange si inférieure à 0 ET avoir en couleur de fond d'intérieur des
cellules du jaune pour les cellules non protégées.
Bonjour, Quelle est ta version d'Excel ? Cordialement. Daniel Le 09/11/2015, HD a supposé :
Bonjour,
J'ai une première condition qui s'applique sur toutes les cellules d'une feuille qui m'affiche les cellules non protégées en intérieur jaune.
Je voudrais une deuxième condition qui m'affiche les caractères des cellules d'une plage données en orange lorsque la valeur dans celles ci est négative... mon souci est que lorsque j'applique la condition j'ai alors toutes les cellules non protégées de la feuille qui sont en caractères oranges.
Je voudrais que les valeurs de la plage J14:J20 soit bien en caractères de couleur orange si inférieure à 0 ET avoir en couleur de fond d'intérieur des cellules du jaune pour les cellules non protégées.
Je dois louper quelque chose...
Merci d'avance pour votre aide.
Cordialement,
@+ HD
MichD
Bonjour,
A ) Tu vas ralentir l'exécution de ton classeur si tu appliques une mise en forme conditionnelle sur toutes les cellules d'une feuille de calcul. Pourquoi ne pas te limiter de A1 à la dernière cellule de la feuille.
Exemple comment procéder pour définir cette plage : '----------------------------------------------------------- Sub test1() Dim DerLig As Long, DerCol As Integer, Rg As Long
With Worksheets("feuil1") 'donne la dernière ligne occupée 'soit par une valeur ou une formule DerLig = .Cells.Find("*", LookIn:=xlFormulas, _ SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
'donne la dernière colonne occupée 'soit par une valeur ou une formule DerCol = .Cells.Find("*", LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
'Variable Range représentant la plage de cellules occupées Set Rg = .Range("A1", .Cells(DerLig, DerCol)) End With MsgBox Rg.Address End Sub '-----------------------------------------------------------
B ) Au lieu d'utiliser la propriété "ColorIndex", utilise plutôt la propriété "Color" Tu t'assures que les couleurs seront les mêmes, peu importe l'ordinateur et les paramètres d'Excel sur cet ordinateur. Range("a1").Interior.Color = RGB(245, 125, 56)
C ) Quand tu es en VBA, tout est en ANGLAIS. Ceci doit être traduit en anglais : Formula1:="ÎLLULE(""protege"";A1)=0" PAR : Formula1:="ÎLL(""protect"",A1)=0"
Voici un exemple de code... Nom de l'onglet de la feuille à adapter 'je n'ai pas testé les conditions... '-------------------------------------------------------------------- Sub test()
With Worksheets("Feuil1") With Cells .FormatConditions.Delete .FormatConditions.Add Type:=xlFormula, _ Formula1:="ÎLL(""protect"",A1)=0" .FormatConditions(1).Interior.ColorIndex = 36 End With
With .Range("J14:J20") .FormatConditions.Add Type:=xlCellValue, _ Operator:=xlLess, Formula1:="=0" .FormatConditions(Selection.FormatConditions.Count).SetFirstPriority .FormatConditions(1).Font.ColorIndex = 46 End With End With
End Sub '--------------------------------------------------------------------
"HD" a écrit dans le message de groupe de discussion : n1q8mo$unq$
Bonjour,
J'ai une première condition qui s'applique sur toutes les cellules d'une feuille qui m'affiche les cellules non protégées en intérieur jaune.
Je voudrais une deuxième condition qui m'affiche les caractères des cellules d'une plage données en orange lorsque la valeur dans celles ci est négative... mon souci est que lorsque j'applique la condition j'ai alors toutes les cellules non protégées de la feuille qui sont en caractères oranges.
Je voudrais que les valeurs de la plage J14:J20 soit bien en caractères de couleur orange si inférieure à 0 ET avoir en couleur de fond d'intérieur des cellules du jaune pour les cellules non protégées.
Je dois louper quelque chose...
Merci d'avance pour votre aide.
Cordialement,
@+ HD
Bonjour,
A ) Tu vas ralentir l'exécution de ton classeur si tu appliques
une mise en forme conditionnelle sur toutes les cellules d'une feuille de calcul.
Pourquoi ne pas te limiter de A1 à la dernière cellule de la feuille.
Exemple comment procéder pour définir cette plage :
'-----------------------------------------------------------
Sub test1()
Dim DerLig As Long, DerCol As Integer, Rg As Long
With Worksheets("feuil1")
'donne la dernière ligne occupée
'soit par une valeur ou une formule
DerLig = .Cells.Find("*", LookIn:=xlFormulas, _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
'donne la dernière colonne occupée
'soit par une valeur ou une formule
DerCol = .Cells.Find("*", LookIn:=xlFormulas, _
SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
'Variable Range représentant la plage de cellules occupées
Set Rg = .Range("A1", .Cells(DerLig, DerCol))
End With
MsgBox Rg.Address
End Sub
'-----------------------------------------------------------
B ) Au lieu d'utiliser la propriété "ColorIndex", utilise plutôt la propriété "Color"
Tu t'assures que les couleurs seront les mêmes, peu importe l'ordinateur
et les paramètres d'Excel sur cet ordinateur.
Range("a1").Interior.Color = RGB(245, 125, 56)
C ) Quand tu es en VBA, tout est en ANGLAIS.
Ceci doit être traduit en anglais :
Formula1:="ÎLLULE(""protege"";A1)=0"
PAR :
Formula1:="ÎLL(""protect"",A1)=0"
Voici un exemple de code... Nom de l'onglet de la feuille à adapter
'je n'ai pas testé les conditions...
'--------------------------------------------------------------------
Sub test()
With Worksheets("Feuil1")
With Cells
.FormatConditions.Delete
.FormatConditions.Add Type:=xlFormula, _
Formula1:="ÎLL(""protect"",A1)=0"
.FormatConditions(1).Interior.ColorIndex = 36
End With
With .Range("J14:J20")
.FormatConditions.Add Type:=xlCellValue, _
Operator:=xlLess, Formula1:="=0"
.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
.FormatConditions(1).Font.ColorIndex = 46
End With
End With
End Sub
'--------------------------------------------------------------------
"HD" a écrit dans le message de groupe de discussion : n1q8mo$unq$1@usenet.pasdenom.info...
Bonjour,
J'ai une première condition qui s'applique sur toutes les cellules d'une
feuille qui m'affiche les cellules non protégées en intérieur jaune.
Je voudrais une deuxième condition qui m'affiche les caractères des
cellules d'une plage données en orange lorsque la valeur dans celles ci
est négative... mon souci est que lorsque j'applique la condition j'ai
alors toutes les cellules non protégées de la feuille qui sont en
caractères oranges.
Je voudrais que les valeurs de la plage J14:J20 soit bien en caractères
de couleur orange si inférieure à 0 ET avoir en couleur de fond
d'intérieur des cellules du jaune pour les cellules non protégées.
A ) Tu vas ralentir l'exécution de ton classeur si tu appliques une mise en forme conditionnelle sur toutes les cellules d'une feuille de calcul. Pourquoi ne pas te limiter de A1 à la dernière cellule de la feuille.
Exemple comment procéder pour définir cette plage : '----------------------------------------------------------- Sub test1() Dim DerLig As Long, DerCol As Integer, Rg As Long
With Worksheets("feuil1") 'donne la dernière ligne occupée 'soit par une valeur ou une formule DerLig = .Cells.Find("*", LookIn:=xlFormulas, _ SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
'donne la dernière colonne occupée 'soit par une valeur ou une formule DerCol = .Cells.Find("*", LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
'Variable Range représentant la plage de cellules occupées Set Rg = .Range("A1", .Cells(DerLig, DerCol)) End With MsgBox Rg.Address End Sub '-----------------------------------------------------------
B ) Au lieu d'utiliser la propriété "ColorIndex", utilise plutôt la propriété "Color" Tu t'assures que les couleurs seront les mêmes, peu importe l'ordinateur et les paramètres d'Excel sur cet ordinateur. Range("a1").Interior.Color = RGB(245, 125, 56)
C ) Quand tu es en VBA, tout est en ANGLAIS. Ceci doit être traduit en anglais : Formula1:="ÎLLULE(""protege"";A1)=0" PAR : Formula1:="ÎLL(""protect"",A1)=0"
Voici un exemple de code... Nom de l'onglet de la feuille à adapter 'je n'ai pas testé les conditions... '-------------------------------------------------------------------- Sub test()
With Worksheets("Feuil1") With Cells .FormatConditions.Delete .FormatConditions.Add Type:=xlFormula, _ Formula1:="ÎLL(""protect"",A1)=0" .FormatConditions(1).Interior.ColorIndex = 36 End With
With .Range("J14:J20") .FormatConditions.Add Type:=xlCellValue, _ Operator:=xlLess, Formula1:="=0" .FormatConditions(Selection.FormatConditions.Count).SetFirstPriority .FormatConditions(1).Font.ColorIndex = 46 End With End With
End Sub '--------------------------------------------------------------------
"HD" a écrit dans le message de groupe de discussion : n1q8mo$unq$
Bonjour,
J'ai une première condition qui s'applique sur toutes les cellules d'une feuille qui m'affiche les cellules non protégées en intérieur jaune.
Je voudrais une deuxième condition qui m'affiche les caractères des cellules d'une plage données en orange lorsque la valeur dans celles ci est négative... mon souci est que lorsque j'applique la condition j'ai alors toutes les cellules non protégées de la feuille qui sont en caractères oranges.
Je voudrais que les valeurs de la plage J14:J20 soit bien en caractères de couleur orange si inférieure à 0 ET avoir en couleur de fond d'intérieur des cellules du jaune pour les cellules non protégées.
A ) Tu vas ralentir l'exécution de ton classeur si tu appliques une mise en forme conditionnelle sur toutes les cellules d'une feuille de calcul.
Merci de ces précieux conseils. Effectivement, en VBA j'avai un peu trop tendance à appliquer les mises en forme conditionnelle à toutes les cellules d'une ou de plusieurs feuilles de calcul (avec l'extension xlsb et donc avec de très grandes quantités de cellules).
B ) Au lieu d'utiliser la propriété "ColorIndex", utilise plutôt la propriété "Color" Tu t'assures que les couleurs seront les mêmes, peu importe l'ordinateur et les paramètres d'Excel sur cet ordinateur.
Intéressant à savoir car effectivement il m'est souvent arrivé d'avoir des couleurs changeantes suivant les postes et les versions d'Excel.
@+ HD
A ) Tu vas ralentir l'exécution de ton classeur si tu appliques
une mise en forme conditionnelle sur toutes les cellules d'une
feuille de calcul.
Merci de ces précieux conseils. Effectivement, en VBA j'avai un peu trop
tendance à appliquer les mises en forme conditionnelle à toutes les
cellules d'une ou de plusieurs feuilles de calcul (avec l'extension xlsb
et donc avec de très grandes quantités de cellules).
B ) Au lieu d'utiliser la propriété "ColorIndex", utilise plutôt la
propriété "Color"
Tu t'assures que les couleurs seront les mêmes, peu importe
l'ordinateur
et les paramètres d'Excel sur cet ordinateur.
Intéressant à savoir car effectivement il m'est souvent arrivé d'avoir
des couleurs changeantes suivant les postes et les versions d'Excel.
A ) Tu vas ralentir l'exécution de ton classeur si tu appliques une mise en forme conditionnelle sur toutes les cellules d'une feuille de calcul.
Merci de ces précieux conseils. Effectivement, en VBA j'avai un peu trop tendance à appliquer les mises en forme conditionnelle à toutes les cellules d'une ou de plusieurs feuilles de calcul (avec l'extension xlsb et donc avec de très grandes quantités de cellules).
B ) Au lieu d'utiliser la propriété "ColorIndex", utilise plutôt la propriété "Color" Tu t'assures que les couleurs seront les mêmes, peu importe l'ordinateur et les paramètres d'Excel sur cet ordinateur.
Intéressant à savoir car effectivement il m'est souvent arrivé d'avoir des couleurs changeantes suivant les postes et les versions d'Excel.