OVH Cloud OVH Cloud

un fond d'une couleur = un chiffre

6 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

--
Céd / Lausanne

6 réponses

Avatar
LE TROLL
Ave congelator, ici décongelator, tu as un forum Excel (vbA) sur
Microsoft.public.fr. aussi...
--------

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message de
news:
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

--
Céd / Lausanne


Avatar
Congelator
Je sais, merci. J'ai commencé par mettre cette question sur Excel mais comme
je pense qu'il va falloir passer par du VBA, je le mets également sur le
forum VBA...

Mais si tu as une idée pour résoudre mon 'blèm, elle est la bienvenue...

Merci d'avance

"LE TROLL" wrote:

Ave congelator, ici décongelator, tu as un forum Excel (vbA) sur
Microsoft.public.fr. aussi...
--------

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message de
news:
> 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
>
> --
> Céd / Lausanne





Avatar
Patrice Henrio
Il faudra passer par VBA. Tu essaies de retrouver comment est codé la
couleur de la cellule (de mémoire Cells(Ligne,Colonne).Color, et donner la
valeur value en fonction de la valeur color,
tu peux utiliser les constantes vbred et vbgreen

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message de
news:
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

--
Céd / Lausanne


Avatar
Congelator
Merci Patrice... c'est malheureusement ce que je craignais car mes
connaissances en VBA sont quasi nulles, tu n'aurais pas un exemple de code
que je n'aurai plus qu'à adapter ? Ce serait super... :-))

Merci d'avance

"Patrice Henrio" wrote:

Il faudra passer par VBA. Tu essaies de retrouver comment est codé la
couleur de la cellule (de mémoire Cells(Ligne,Colonne).Color, et donner la
valeur value en fonction de la valeur color,
tu peux utiliser les constantes vbred et vbgreen

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message de
news:
> 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
>
> --
> Céd / Lausanne





Avatar
Patrice Henrio
Si je peux te fournir ça.
Soit tu utilises un bouton pour déclencher l'action soit tu fais cette
action chaque fois que tu modifies la couleur.
Je te fais ça ce soir peut-être.

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message de
news:
Merci Patrice... c'est malheureusement ce que je craignais car mes
connaissances en VBA sont quasi nulles, tu n'aurais pas un exemple de code
que je n'aurai plus qu'à adapter ? Ce serait super... :-))

Merci d'avance

"Patrice Henrio" wrote:

Il faudra passer par VBA. Tu essaies de retrouver comment est codé la
couleur de la cellule (de mémoire Cells(Ligne,Colonne).Color, et donner
la
valeur value en fonction de la valeur color,
tu peux utiliser les constantes vbred et vbgreen

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message
de
news:
> 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
>
> --
> Céd / Lausanne







Avatar
Congelator
Merci pour le coup de main mais ce n'est plus nécessaire. GVentre (sur le
forum Excel) a trouvé la solution suivante qui fonctionne très bien.

*************************************
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
*************************************

En tout cas, merci de t'être proposé.

Céd

"Patrice Henrio" wrote:

Si je peux te fournir ça.
Soit tu utilises un bouton pour déclencher l'action soit tu fais cette
action chaque fois que tu modifies la couleur.
Je te fais ça ce soir peut-être.

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message de
news:
> Merci Patrice... c'est malheureusement ce que je craignais car mes
> connaissances en VBA sont quasi nulles, tu n'aurais pas un exemple de code
> que je n'aurai plus qu'à adapter ? Ce serait super... :-))
>
> Merci d'avance
>
> "Patrice Henrio" wrote:
>
>> Il faudra passer par VBA. Tu essaies de retrouver comment est codé la
>> couleur de la cellule (de mémoire Cells(Ligne,Colonne).Color, et donner
>> la
>> valeur value en fonction de la valeur color,
>> tu peux utiliser les constantes vbred et vbgreen
>>
>> "Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message
>> de
>> news:
>> > 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
>> >
>> > --
>> > Céd / Lausanne
>>
>>
>>