Autres copier la couleur d'une cellule

michel1941

XLDnaute Nouveau
Bonjour à tous,

Je travaille pour des raisons "historiques" avec Excel 2003.
Je voudrais que le changement de couleur dans une colonne se répercute
automatiquement dans une autre en VBA avec ou sans le contenu (c'est égal).
Je joint un exemple de ce que je souhaite.
J'ai un pack de fonctions qui me permet de récupérer le code couleur
de la cellule de départ mais je ne sais pas l'appliquer à celle de destination.
Merci d'avance à ceux qui se pencheront sur mon problème
 

Pièces jointes

  • Exemple.xls
    21 KB · Affichages: 5

fanfan38

XLDnaute Barbatruc
Bonjour
Avec cette macro tu copie de la colonne A à la colonne D
VB:
Sub transfert()
  Dim i As Long
  For i = 1 To Range("A" & Rows.Count).End(xlUp).Row
    Range("D" & i).Interior.Color = Range("A" & i).Interior.Color
  Next
End Sub
A+ François
 

Phil69970

XLDnaute Barbatruc
Bonjour @michel1941 , Fanfan et Sylvain

Ma version en automatique

VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim i%
If Not Application.Intersect(Target, Range("A1:A35")) Is Nothing Then
    For i = 1 To 35
        Range("D" & i).Interior.Color = Range("A" & i).Interior.Color
        Range("D" & i) = Range("A" & i).Value
    Next i
End If
End Sub

Merci de ton retour

@Phil69970
 

michel1941

XLDnaute Nouveau
Bonjour
Avec cette macro tu copie de la colonne A à la colonne D
VB:
Sub transfert()
  Dim i As Long
  For i = 1 To Range("A" & Rows.Count).End(xlUp).Row
    Range("D" & i).Interior.Color = Range("A" & i).Interior.Color
  Next
End Sub
A+ François

Bonjour Michel, fanfan,
Ou encore :
VB:
Sub CopieCouleurs()
    Range("A1:A" & [A65500].End(xlUp).Row).Copy
    Range("D1").PasteSpecial Paste:=xlPasteFormats
End Sub
Si on accepte que le format soit copié. ( couleurs, police ... )
Un grand merci à tous. La solution de Sylvanu me convient parfaitement
 

Discussions similaires

Statistiques des forums

Discussions
312 213
Messages
2 086 302
Membres
103 174
dernier inscrit
OBUTT