Colorier des cellules de différentes couleurs automatiquement

  • Initiateur de la discussion Initiateur de la discussion halima
  • 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 !

H

halima

Guest
Bonjour,

je souhaiterai colorier des cellules dans une même colonne automatiquement.

sur le fichier joint vous trouverez l'exemple que je souhaiterai avoir...

Je souhaiterai différencier les aller des retours en quelques sortes...

D'avance merci
 

Pièces jointes

Re : Colorier des cellules de différentes couleurs automatiquement

Figure toi que c'est ce que j'ai fait...

Mais je les voulais simultanément maislà je n'y suis pas arrivé...

je n'ai pas compris à quoi correspondait la variable K?

d'avance merci...

Halima
 
Re : Colorier des cellules de différentes couleurs automatiquement

Re 🙂,
La variable K est utilisée pour déterminer la dernière ligne utilisée sur la feuille réceptrice.
Je comprends pas, je viens de tester
Code:
Sub test()
Dim I As Integer, J As Byte, Tableau, MaFeuille As Worksheet
Dim K As Integer
Set MaFeuille = ActiveSheet
With MaFeuille
.Range("A:B").Interior.ColorIndex = 2
Tableau = Array(6, 35, 37, 7, 3)
While ThisWorkbook.Worksheets.Count < UBound(Tableau) + 2
ThisWorkbook.Worksheets.Add after:=Sheets(ThisWorkbook.Worksheets.Count)
Wend
For I = 5 To .Range("A35000").End(xlUp).Row Step 8
If J > UBound(Tableau) Then J = 0
.Range("A" & I & ":B" & I + 6).Interior.ColorIndex = Tableau(J)
K = Sheets(J + 2).Range("A35000").End(xlUp).Row + 1
If K = 2 Then K = 1
Sheets(J + 2).Range("A" & K & ":B" & K + 6).Value = .Range("A" & I & ":B" & I + 6).Value
Sheets(J + 2).Range("A" & K & ":B" & K + 6).Interior.ColorIndex = Tableau(J)
J = J + 1
Next I
End With
End Sub
sur ton 2ème fichier, et ça fonctionne parfaitement 😕...
Enfin, avec la période de départ 🙄...
A + 😎
 
Re : Colorier des cellules de différentes couleurs automatiquement

Re 🙂,
Autant pour moi, non, le résultat n'est pas bon vu que c'est 2 fois la colonne A (bizarre, j'aurais pensé que ça marcherait avec une matrice à 2 dimensions 🙄...) 😱...
Donc il faut faire A ET B
Code:
Sub test()
Dim I As Integer, J As Byte, Tableau, MaFeuille As Worksheet
Dim K As Integer
Set MaFeuille = ActiveSheet
With MaFeuille
.Range("A:B").Interior.ColorIndex = 2
Tableau = Array(6, 35, 37, 7, 3)
While ThisWorkbook.Worksheets.Count < UBound(Tableau) + 2
ThisWorkbook.Worksheets.Add after:=Sheets(ThisWorkbook.Worksheets.Count)
Wend
For I = 5 To .Range("A35000").End(xlUp).Row Step 8
If J > UBound(Tableau) Then J = 0
.Range("A" & I & ":B" & I + 6).Interior.ColorIndex = Tableau(J)
K = Sheets(J + 2).Range("A35000").End(xlUp).Row + 1
If K = 2 Then K = 1
Sheets(J + 2).Range("A" & K & ":A" & K + 6).Value = .Range("A" & I & ":A" & I + 6).Value
Sheets(J + 2).Range("B" & K & ":B" & K + 6).Value = .Range("B" & I & ":B" & I + 6).Value
Sheets(J + 2).Range("A" & K & ":B" & K + 6).Interior.ColorIndex = Tableau(J)
J = J + 1
Next I
End With
End Sub
Bonne suite 😎
 
Re : Colorier des cellules de différentes couleurs automatiquement

Merci...

C'est ce que j'allais faire...

Mais t'es plus rapide que moi....

M'enfin...
Peux-tu me décrire ces lignes de commandes stP....

While ThisWorkbook.Worksheets.Count < UBound(Tableau) + 2
ThisWorkbook.Worksheets.Add after:=Sheets(ThisWorkbook.Worksheets.Count)
Wend
Sheets(J + 2).Range("A" & K & ":A" & K + 6).Value = .Range("A" & I & ":A" & I + 6).Value


d'avance merci....

Halima


Peux-tu
 
Re : Colorier des cellules de différentes couleurs automatiquement

Re 🙂,
Code:
While ThisWorkbook.Worksheets.Count < UBound(Tableau) + 2
' Tant que le nombre de feuilles du fichier est inférieur au nombre de valeurs
' du tableau + 1 (le tableau commence à l'indice 0)
ThisWorkbook.Worksheets.Add after:=Sheets(ThisWorkbook.Worksheets.Count)
' Rajoute une feuille après la dernière feuille du classeur
Wend
' Boucle
Code:
Sheets(J + 2).Range("A" & K & ":A" & K + 6).Value = .Range("A" & I & ":A" & I + 6).Value
' Copie les valeurs de la plage dans l'autre plage
Bon dimanche 😎
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour