valeur cellule couleur

Le
bernbret
Je veux donner une valeur si le fond de ma cellule est rouge, une autre
valeur s'il est vert ??? comment faire ? Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel
Le #4903221
Bonjour.
Essaie, en adaptant à tes colorindexes :

Sub ValeurSelonCouleur()
Dim c As Range
For Each c In Selection
Select Case c.Interior.ColorIndex
Case 3: c = 1
Case 4: c = 2
Case 5: c = 3
Case 6: c = 4
Case Else: c = 50
End Select
Next c
End Sub

Cordialement.
Daniel
"bernbret" news:
Je veux donner une valeur si le fond de ma cellule est rouge, une autre
valeur s'il est vert ??? comment faire ? Merci


bernbret
Le #4903131
Désolé je ne comprends pas Que dois- je marquer exactement dans des cellules?
pour par exemple indiquer 1 si elle est rouge
et 2 si elle est verte ?
Merci beaucoup


Bonjour.
Essaie, en adaptant à tes colorindexes :

Sub ValeurSelonCouleur()
Dim c As Range
For Each c In Selection
Select Case c.Interior.ColorIndex
Case 3: c = 1
Case 4: c = 2
Case 5: c = 3
Case 6: c = 4
Case Else: c = 50
End Select
Next c
End Sub

Cordialement.
Daniel
"bernbret" news:
Je veux donner une valeur si le fond de ma cellule est rouge, une autre
valeur s'il est vert ??? comment faire ? Merci







JB
Le #4903091
Bonjour,

Donne un nombre en fonction d'une couleur de cellule

Function Nbre(c As Range)
Application.Volatile
a = Array(3, 4, 36, 33, 35) ' couleurs
b = Array(11, 12, 1, 5, 8, 9) ' nombres
x = Application.Match(c.Interior.ColorIndex, a, 0)
If Not IsError(x) Then
Nbre = b(x - 1)
Else
Nbre = 0
End If
End Function

Pour Maj:

Dim celluleAvant
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not IsEmpty(celluleAvant) Then
If Not Intersect(Range(celluleAvant), [A1:A10]) Is Nothing Then
Calculate
End If
celluleAvant = Target.Address
End Sub

http://cjoint.com/?him5PSaYX2

JB

On 8 juil, 08:50, bernbret
Je veux donner une valeur si le fond de ma cellule est rouge, une autre
valeur s'il est vert ??? comment faire ? Merci


Daniel
Le #4903081
Dans la macro, si la couleur de la cellule est rouge pétant (colorindex=3),
la cellule prend la valeur 1.
Il faut que tu connaisses les colorindex de tes couleurs et que tu aies
utilissé l'une des 40 couleurs prédéfinies dans la palette de couleurs.
Pour connaître la valeur de ce colorindex, sélectionne une cellule et
exécute :
Sub test2()
MsgBox Selection.Interior.ColorIndex
End Sub
Daniel

"bernbret" news:
Désolé je ne comprends pas Que dois- je marquer exactement dans des
cellules?
pour par exemple indiquer 1 si elle est rouge
et 2 si elle est verte ?
Merci beaucoup


Bonjour.
Essaie, en adaptant à tes colorindexes :

Sub ValeurSelonCouleur()
Dim c As Range
For Each c In Selection
Select Case c.Interior.ColorIndex
Case 3: c = 1
Case 4: c = 2
Case 5: c = 3
Case 6: c = 4
Case Else: c = 50
End Select
Next c
End Sub

Cordialement.
Daniel
"bernbret" de
news:
Je veux donner une valeur si le fond de ma cellule est rouge, une autre
valeur s'il est vert ??? comment faire ? Merci









anonymousA
Le #4903061
Bonjour,

ce que te propose Daniel, c'est à l'aide d'une procédure VBA ( FAire
Alt+F11, puis aller copier la procédure proposée, et enfin revenir sur
la feuille, selectionner les cellules intéréssées puis Lancer la Macro
par Outils/Macro/MAcro choisr ValeurSelonCouleur et Exécuter) de faire
ce que tu demandes.
Il n'y a pas de formules à ma connaissance qui détecte les couleurs (en
tout cas de manière stricte. Pour des éléments plus précis que peut
renvoyer eventuellement une formule , voir la fonction native d'Excel
CELLLULE de l'aide) et la mise en forme conditionnelle ne peut jouer
non plus sur les détections de couleurs. Donc,... il reste VBA que t'a
proposé Daniel.

A+


Désolé je ne comprends pas Que dois- je marquer exactement dans des cellules?
pour par exemple indiquer 1 si elle est rouge
et 2 si elle est verte ?
Merci beaucoup


Bonjour.
Essaie, en adaptant à tes colorindexes :

Sub ValeurSelonCouleur()
Dim c As Range
For Each c In Selection
Select Case c.Interior.ColorIndex
Case 3: c = 1
Case 4: c = 2
Case 5: c = 3
Case 6: c = 4
Case Else: c = 50
End Select
Next c
End Sub

Cordialement.
Daniel
"bernbret" news:
Je veux donner une valeur si le fond de ma cellule est rouge, une autre
valeur s'il est vert ??? comment faire ? Merci








Misange
Le #4903011
Re bonjour Bernbret

Tu précisais dans une autre ficelle que tu ne voulais pas de blabla
technique compliqué ;-)
C'est pour ça que je ne t'ai pas proposé de macro.
Deux solutions pour toi : ou bien tu as ABSOLUMENT besoin de ce que tu
demandes, tu ne peux pas organiser tes données autrement et tu es
disposé à passer un peu de temps pour apprendre quelque chose de très
utile et qui t'ouvira des tas de perspectives et dans ce cas, il faut
dédcouvrir les macros. Ou bien ce n'est pas indispensable et alors
réorganise tes données ou ta demande mais il n'est pas possible de faire
ce que tu demandes avec une formule quelconque qu'on tape dans une
cellule de la feuille de calcul.
Si tu ne sais pas ce qu'est une macro, tu peux le découvrir ici
http://www.excelabo.net/excel/pap-vba.php
http://xlwiki.free.fr/wiki/wakka.php?wikiÞbuterDeZero


Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

Désolé je ne comprends pas Que dois- je marquer exactement dans des cellules?
pour par exemple indiquer 1 si elle est rouge
et 2 si elle est verte ?
Merci beaucoup


Bonjour.
Essaie, en adaptant à tes colorindexes :

Sub ValeurSelonCouleur()
Dim c As Range
For Each c In Selection
Select Case c.Interior.ColorIndex
Case 3: c = 1
Case 4: c = 2
Case 5: c = 3
Case 6: c = 4
Case Else: c = 50
End Select
Next c
End Sub

Cordialement.
Daniel
"bernbret" news:
Je veux donner une valeur si le fond de ma cellule est rouge, une autre
valeur s'il est vert ??? comment faire ? Merci








Modeste
Le #4903001
Bonsour® bernbret avec ferveur ;o))) vous nous disiez :

Je veux donner une valeur si le fond de ma cellule est rouge, une
autre valeur s'il est vert ??? comment faire ? Merci



par exemple, pour afficher en B1 le colorindex de la cellule se trouvant
immédiatement à gauche (donc en A1).

Sélectionnez B1 et déroulez Insertion, Nom, Définir.
Dans le champ Noms dans le classeur, tapez COULEUR.
Dans le champ Fait référence à, saisissez =LIRE.CELLULE(38;!A1)+(0*ALEA()) puis
appuyez
sur OK.
nb : le 0*ALEA() ne sert qu'a forcer la révaluation de la formule lors d'un
recalcul (voir restriction ci-dessous)

Tapez maintenant en B1 la formule =COULEUR et validez.
Le n° du colorIndex de la cellule A1 apparaît maintenant en B1.
Désormais, si vous tapez =COULEUR dans n'importe quelle cellule du tableau,
vous verrez s'afficher le colorindex de la cellule placée à sa gauche.

Restriction !!!!!!!!!!!!!!!!!!!!!!
ce résultat n'est hélas évalué que lors de la validation de cette unique
cellule contenant "=COULEUR"
si d'autres cellules contiennent "=COULEUR"
il faudra :
soit valider chacune tour à tour ...
soit forcer le recalcul de la feuille par la touche F9
:-((

dans l'exemple tel que demandé
=SI(COULEUR=3;"Bravo";"Plouf")
la formule teste la couleur de la cellule située immédiatement à gauche et
affiche Bravo si rouge, plouf sinon
;o)))

@+
;o)))

anonymousA
Le #4902981
Bonjour , Modeste

Excel4 n'a jamais fini de nous rappeler son existence. Apanage de l'age
peut-être ( Rires) ?

Très cordialement,


Bonsour® bernbret avec ferveur ;o))) vous nous disiez :

Je veux donner une valeur si le fond de ma cellule est rouge, une
autre valeur s'il est vert ??? comment faire ? Merci



par exemple, pour afficher en B1 le colorindex de la cellule se trouvant
immédiatement à gauche (donc en A1).

Sélectionnez B1 et déroulez Insertion, Nom, Définir.
Dans le champ Noms dans le classeur, tapez COULEUR.
Dans le champ Fait référence à, saisissez =LIRE.CELLULE(38;!A1)+(0*ALEA()) puis
appuyez
sur OK.
nb : le 0*ALEA() ne sert qu'a forcer la révaluation de la formule lors d'un
recalcul (voir restriction ci-dessous)

Tapez maintenant en B1 la formule =COULEUR et validez.
Le n° du colorIndex de la cellule A1 apparaît maintenant en B1.
Désormais, si vous tapez =COULEUR dans n'importe quelle cellule du tableau,
vous verrez s'afficher le colorindex de la cellule placée à sa gauche.

Restriction !!!!!!!!!!!!!!!!!!!!!!
ce résultat n'est hélas évalué que lors de la validation de cette unique
cellule contenant "=COULEUR"
si d'autres cellules contiennent "=COULEUR"
il faudra :
soit valider chacune tour à tour ...
soit forcer le recalcul de la feuille par la touche F9
:-((

dans l'exemple tel que demandé
=SI(COULEUR=3;"Bravo";"Plouf")
la formule teste la couleur de la cellule située immédiatement à gauche et
affiche Bravo si rouge, plouf sinon
;o)))

@+
;o)))





Modeste
Le #4902921
Bonsour® anonymousA avec ferveur ;o))) vous nous disiez :

Excel4 n'a jamais fini de nous rappeler son existence. Apanage de
l'age peut-être ( Rires) ?


;o))) ;o))) ;o)))
../..
mais il n'est pas possible de faire ce que tu demandes avec une formule
quelconque
qu'on tape dans une cellule de la feuille de calcul.
../..
ce n'était qu'un gentil clin d'oeil à la petite algarade en cours ...

../..
Ce qui a beaucoup diminué ce sont les joutes excelliennes entre contributeurs
pour titiller l'autre sur sa solution.
../..
j'espére avoir bien interprété le sens de cette derniere citation ;o)))





--
--
@+
;o)))

Misange
Le #4902851
;-)
(ps quand tu mets des tas de ))) moi ça me fait plus de souriette dans
thunderbird !)
certes certes cher Modeste mais... car il y a un mais de taille à ta
solution :
notre demandeur voudrait (si j'ai bien compris !) que si il met sa
cellule en rouge, par exemple le chiffre 12 s'inscrive dedans. Si il met
bleu ce soit 12345. Je ne pense pas qu'il veuille récupérer le color-index.
Cela dit, je m'incline, les macros XL4 j'ai tout oublié pour le peu que
j'en ai su.
tes interprétations sont tout à fait justes dans ce cas précis :-)

Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

Bonsour® anonymousA avec ferveur ;o))) vous nous disiez :

Excel4 n'a jamais fini de nous rappeler son existence. Apanage de
l'age peut-être ( Rires) ?


;o))) ;o))) ;o)))
../..
mais il n'est pas possible de faire ce que tu demandes avec une formule
quelconque
qu'on tape dans une cellule de la feuille de calcul.
../..
ce n'était qu'un gentil clin d'oeil à la petite algarade en cours ...

../..
Ce qui a beaucoup diminué ce sont les joutes excelliennes entre contributeurs
pour titiller l'autre sur sa solution.
../..
j'espére avoir bien interprété le sens de cette derniere citation ;o)))





--
--
@+
;o)))





Publicité
Poster une réponse
Anonyme