VBA Si couleur cellule chercher une valeur dans une cellule

Résolu/Fermé
jambontomate Messages postés 44 Date d'inscription jeudi 27 février 2014 Statut Membre Dernière intervention 7 janvier 2015 - 15 avril 2014 à 08:24
jambontomate Messages postés 44 Date d'inscription jeudi 27 février 2014 Statut Membre Dernière intervention 7 janvier 2015 - 22 avril 2014 à 08:07
Bonjour à tous,


J'ai des cellules avec des couleurs (ex: B2:B10 sont jaunes ). L'idée est:

Si B2=jaune, B3 = "valeur de la cellule F19 de la feuille XXXX".

Comment l'écrire en VBA merci ou formule si pas besoin de VBA (encore mieux).

Merci beaucoup.
A voir également:

3 réponses

g Messages postés 1262 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 15 mai 2017 572
15 avril 2014 à 08:53
Bonjour,

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Range("B2").Interior.ColorIndex = 6 Then
Range("B3") = Sheets("Feuil2").Range("F19")
End If
End Sub

Cordialement
1
jambontomate Messages postés 44 Date d'inscription jeudi 27 février 2014 Statut Membre Dernière intervention 7 janvier 2015 1
15 avril 2014 à 13:39
Merci je modifie et je vois si c'est tout bon merci !
0
jambontomate Messages postés 44 Date d'inscription jeudi 27 février 2014 Statut Membre Dernière intervention 7 janvier 2015 1
15 avril 2014 à 16:18
Une remarque: Si cette idèe s'applique a une plage de cellules, ex: plage de cellules B2:B20 si B2:B10 = jaune alors C2:C10 = "valeur de la feuille "xxx" de la cellule "Y" si B10:B20 = rouge alors C10:C20 = "valeur de la feuille "xxx" de la cellule "Y".

Le formule VBA change radicalement ou juste mettre range(B2:B20)...? Merci
0
g Messages postés 1262 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 15 mai 2017 572
15 avril 2014 à 17:34
Le code change mais pour pouvoir l'établir il faut des données précises.
Nom des feuilles, désignation des cellules de commande, désignation des cellules de résultat, etc....
Voire joindre un fichier renseigné.
0
g Messages postés 1262 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 15 mai 2017 572
15 avril 2014 à 18:36
Sinon tu peux voir avec ce code pour les valeurs de renvoi en feuil2 F19 et F20

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For i = 2 To 10
If Range("B" & i).Interior.ColorIndex = 6 Then
Range("C" & i) = Sheets("Feuil2").Range("F19")
ElseIf Range("B" & i).Interior.ColorIndex <> 6 Then
Range("C" & i) = ""
End If
Next i
For j = 11 To 20
If Range("B" & j).Interior.ColorIndex = 3 Then
Range("C" & j) = Sheets("Feuil2").Range("F20")
ElseIf Range("B" & j).Interior.ColorIndex <> 3 Then
Range("C" & j) = ""
End If
Next j
End Sub
0
jambontomate Messages postés 44 Date d'inscription jeudi 27 février 2014 Statut Membre Dernière intervention 7 janvier 2015 1
16 avril 2014 à 08:46
Je joindrai un fichier ce soir car là la sécurité du boulot bloque. En faites, ca va ètre plus compliqué pour la macro.

Je vais avoir une colonne B2:B100 dedans quatre couleures fixes (bleu, jaune, orange, rouge) qui peuvent changer au niveau des plages de cellules dans cette colonne souvent.

Je souhaiterais si possible que la macro aille chercher pour les cellules C2:C100 à chaque changement de couleurs une valeur différente (dans ce cas: quatre valeures différentes = quatre couleures différentes)

Ex: pour la couleur jaune la valeur de la cellule B19 de la feuille 1, la couleur bleu la valeur de la cellule B19 de la feuille 2 etc...

La difficulté de cette macro c'est que les cellules de couleurs peuvent changer de plage de cellule, un jour B2:B10 jaune le lendemain B4:15 bleu etc...

Est ce possible déjà? si possible je vous enverrai un fichier ce soir avec un exemple si ce n'est pas clair.
0
Mike-31 Messages postés 18313 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 5 073
15 avril 2014 à 08:42
Bonjour,

Comment sont colorisé tes cellules, manuellement ou avec une mise en forme conditionnelle.
Si mise en forme conditionnelle quel est la forme de ta mise en forme
0
jambontomate Messages postés 44 Date d'inscription jeudi 27 février 2014 Statut Membre Dernière intervention 7 janvier 2015 1
15 avril 2014 à 13:37
Les cellules initiales manuellement. Puis par VBA les autres cellules prennent la couleur automatiquement des cellules initiales.
0
jambontomate Messages postés 44 Date d'inscription jeudi 27 février 2014 Statut Membre Dernière intervention 7 janvier 2015 1
15 avril 2014 à 17:32
Une remarque: Si cette idèe s'applique a une plage de cellules, ex: plage de cellules B2:B20 si B2:B10 = jaune alors C2:C10 = "valeur de la feuille "xxx" de la cellule "Y" si B10:B20 = rouge alors C10:C20 = "valeur de la feuille "xxx" de la cellule "Y".

Le formule VBA change radicalement ou juste mettre range(B2:B20)...? Merci
0