EXCEL - VBA - modifier le couelur du'une cellule avec condition

  • Initiateur de la discussion Initiateur de la discussion airsage
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

airsage

XLDnaute Junior
Bonjour à tous,

Je cherche à faire la modification de la couleur d'une cellule à partir de cette formule :

Sheets("UNIX_SERVER").Select
Set f = Sheets("Server_Application")
Set mondico = CreateObject("Scripting.Dictionary")
a = f.Range("a2:i" & f.[a65000].End(xlUp).Row)
For i = LBound(a) To UBound(a)
mondico(a(i, 9)) = a(i, 3)
Next i
Set f = Sheets("UNIX_SERVER")
For Each c In f.Range("G5:G" & f.[G65000].End(xlUp).Row)
If mondico.exists(c.Interior.Color) Then c.Offset(, -3).Value = mondico(c.Interior.Color)
Next c

Je ne veux pas copier le texte dans la cellule d'arrivée, mais uniquement la couleur de remplissage, tout en ne supprimant pas le texte de la cellule d'arrivée.

apparemment Interior.Color ne fonctionne pas.


merci par avance si quelqu'un peut m'aider.
 

Pièces jointes

Dernière édition:
Re : EXCEL - VBA - modifier le couelur du'une cellule avec condition

Bonjour airsage

Pour t'aider à comprendre je te suggère de tester d'abord ceci :

Code:
For Each c In f.Range("G5:G" & f.[G65000].End(xlUp).Row)
    c.Offset(, -3).Interior.Color =c.Interior.Color
Next c
 
Re : EXCEL - VBA - modifier le couelur du'une cellule avec condition

Bonjour,

La condition est que si les "server" de la feuille "UNIX_SERVER" (colonne G) apparaissent dans la feuille "Server_Application" (colonne I), alors prendre uniquement la couleur de la feuille "Server_Application" colonne C, (sans le texte) et l'appliquer dans la feuille "UNIX_SERVER" colonne D sans modifier le texte).
 
Re : EXCEL - VBA - modifier le couelur du'une cellule avec condition

Re

Tester:
Code:
Sub Test()
Sheets("UNIX_SERVER").Select
Set f = Sheets("Server_Application")
Set mondico = CreateObject("Scripting.Dictionary")
Set a = f.Range("i2:i" & f.[a65000].End(xlUp).Row)
For Each cel In a
  mondico(cel.Value) = cel.Offset(0, -6).Interior.Color
Next
Set f = Sheets("UNIX_SERVER")
For Each c In f.Range("G5:G" & f.[G65000].End(xlUp).Row)
If mondico.exists(c.Value) Then c.Offset(, -3).Interior.Color = mondico(c.Value)
Next c
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
183
Réponses
3
Affichages
504
Réponses
12
Affichages
552
Réponses
4
Affichages
461
Réponses
9
Affichages
583
Retour