OVH Cloud OVH Cloud

chiffre en fonction de la couleur de fond

7 réponses
Avatar
Congelator
Salut à toutes et à tous,

Mon problème est le suivant : Dans une feuille Excel, en colonne B, j'ai des
cellules qui ont un fond vert ou rouge. Je dois faire en sorte que si la
cellule est verte, en face (en colonne C), je dois avoir le chiffre 1 qui
s'inscrit. Et si la cellule est rouge, c'est le chiffre 0 qui doit s'inscrire.

La mise en forme conditionnelle fonctionne dans l'autre sens (1 = vert) mais
pas dans celui-ci... :-((

Si quelqu'un à une solution, ça m'intéresse.

Merci d'avance
(PS : je vais également mettre cette question dans la section VBA)
--
Céd / Lausanne

7 réponses

Avatar
AV
La mise en forme conditionnelle fonctionne dans l'autre sens (1 = vert) mais
pas dans celui-ci... :-((


Bien sur que si !
=NB.SI(Plage;1)

AV

Avatar
Congelator
Tu peux développer un peu plus stp ?
J'ai essayé =NB.SI(B1:B100;1) mais ça ne donne rien. Même si une cellule est
verte, il n'y a pas de chiffre qui s'inscrit en colonne C. Je m'y prends
certainement mal.

Merci

"AV" wrote:

La mise en forme conditionnelle fonctionne dans l'autre sens (1 = vert) mais
pas dans celui-ci... :-((


Bien sur que si !
=NB.SI(Plage;1)

AV






Avatar
karine
bonjour,

Je ne crois pas que la fonction de mise en forme conditionnelle te permette
de faire ce que tu veux. Cette fonction permet d'appliquer des mises en forme
mais d'écrire des données.
je pense qu'il n'y a que le VBA qui pourra te donner la solution. par contre
je ne connais pas.



Tu peux développer un peu plus stp ?
J'ai essayé =NB.SI(B1:B100;1) mais ça ne donne rien. Même si une cellule est
verte, il n'y a pas de chiffre qui s'inscrit en colonne C. Je m'y prends
certainement mal.

Merci

"AV" wrote:

La mise en forme conditionnelle fonctionne dans l'autre sens (1 = vert) mais
pas dans celui-ci... :-((


Bien sur que si !
=NB.SI(Plage;1)

AV








Avatar
GVentre
Bonjour Congelator (Bwouf, il fait froid la dedans!),

Essai:

Sub ChercheColor()

Dim MaPlage, Cell As Range

Set MaPlage = Range("B1:B10") 'à adapter

For Each Cell In MaPlage
If Cell.Interior.ColorIndex = 50 Then
Cell.Offset(0, 1).Value = 1
End If
If Cell.Interior.ColorIndex = 3 Then
Cell.Offset(0, 1).Value = 0
End If

Next Cell

End Sub

Attention mettre la bonne valeur du ColorIndex

Cordialement,

GVentre


Salut à toutes et à tous,

Mon problème est le suivant : Dans une feuille Excel, en colonne B, j'ai des
cellules qui ont un fond vert ou rouge. Je dois faire en sorte que si la
cellule est verte, en face (en colonne C), je dois avoir le chiffre 1 qui
s'inscrit. Et si la cellule est rouge, c'est le chiffre 0 qui doit s'inscrire.

La mise en forme conditionnelle fonctionne dans l'autre sens (1 = vert) mais
pas dans celui-ci... :-((

Si quelqu'un à une solution, ça m'intéresse.

Merci d'avance
(PS : je vais également mettre cette question dans la section VBA)




Avatar
Congelator
Salut GVentre,

un grand MERCI !!! C'est tout à fait ce que je cherchais. J'ai adapté et ça
fonctionne !!!

Merci

"GVentre" wrote:

Bonjour Congelator (Bwouf, il fait froid la dedans!),

Essai:

Sub ChercheColor()

Dim MaPlage, Cell As Range

Set MaPlage = Range("B1:B10") 'à adapter

For Each Cell In MaPlage
If Cell.Interior.ColorIndex = 50 Then
Cell.Offset(0, 1).Value = 1
End If
If Cell.Interior.ColorIndex = 3 Then
Cell.Offset(0, 1).Value = 0
End If

Next Cell

End Sub

Attention mettre la bonne valeur du ColorIndex

Cordialement,

GVentre


Salut à toutes et à tous,

Mon problème est le suivant : Dans une feuille Excel, en colonne B, j'ai des
cellules qui ont un fond vert ou rouge. Je dois faire en sorte que si la
cellule est verte, en face (en colonne C), je dois avoir le chiffre 1 qui
s'inscrit. Et si la cellule est rouge, c'est le chiffre 0 qui doit s'inscrire.

La mise en forme conditionnelle fonctionne dans l'autre sens (1 = vert) mais
pas dans celui-ci... :-((

Si quelqu'un à une solution, ça m'intéresse.

Merci d'avance
(PS : je vais également mettre cette question dans la section VBA)







Avatar
AV
Si tes cellules sont colorées avec une MEFC
Dans l'exemple et pour A1:Xx la formule de la MEFC serait
¡=1 >> vert
Au lieu ensuite de comptabiliser les cellules vertes (consaquence de leur
valeur), il te suffirait de comptabiliser les cellules contenant la valeur 1
D'où le calcul :
=NB.SI(A1:A100;1)

Tout autre solution utilisant une macro et, à fortiori une fonction perso ne
peut-être valide qu'à l'instant T, car le changement de format ne déclenche
aucun évènement (calcul)

A part ça, chacun fait comme il l'entend...
AV
Avatar
AV
Serait-il possible de savoir où trouver la table des index des couleurs ?


A exécuter sur une feuille vierge :

Sub zzz()
For i = 1 To 56
Cells(i, "A").Interior.ColorIndex = i
Cells(i, "B") = "Index " & i
Next
End Sub

AV