les lignes soit colorés en bleu et en rouge comme dans la listview

petchy

XLDnaute Occasionnel
bonjour

dans une listview je récupère des données qui sont supérieur à 3 mois et 6 mois
3 mois = ligne bleu
6 mois = ligne rouge
voila le code

List.View = lvwReport
' mise en couleur (bleu) des données sup à 3 mois
For i = 3 To Range("A65536").End(xlUp).Row
If Cells(i, 3) < Date - 90 Then
'If Cells(i + 90, 1) < Date And Cells(i, 1) < Date Then

List.ListItems.Add , , Cells(i, 1)
For k = 2 To 5
List.ListItems(List.ListItems.Count).ListSubItems.Add , , Cells(i, k)
Next
End If
Next
' mise en couleur (rouge) des données sup à 6 mois
For x = 1 To List.ListItems.Count
If CDate(Format(List.ListItems(x).ListSubItems(2).Text, "dd/mm/yyyy")) < Date - 180 Then
List.ListItems(x).ForeColor = RGB(255, 0, 0)
Tt = Tt + 1
For j = 1 To 4
List.ListItems(x).ListSubItems(j).ForeColor = RGB(255, 0, 0)

Frame4.Width = 355

Next
End If
Next
à l'aide d'un bouton j'envoi les données de listview vers une feuille pour faire une impression

Private Sub CommandButton16_Click()
Dim Lig As Integer
Dim Col As Integer

With Worksheets("Impression")
.Range("A3:E" & .Range("A" & Cells.Rows.Count).End(xlUp).Row + 1).ClearContents

For Lig = 1 To List.ListItems.Count
.Range("A" & Lig + 1).Value = List.ListItems(Lig).Text
' Détail des autres colonnes
For Col = 1 To 4
.Cells(Lig + 1, Col + 1).Value = List.ListItems(Lig).ListSubItems(Col).Text
Next Col
Next Lig
End With
End Sub

Mais est ce possible lorsque que j'envoi mes données sur la feuille "impression"les lignes soit colorés en bleu et en rouge comme dans la listview.

merci ;)
 

Pierrot93

XLDnaute Barbatruc
Re : les lignes soit colorés en bleu et en rouge comme dans la listview

Bonjour Petchy

peut être comme ceci, si j'ai bien compris, à insérer dans ta boucle :

Code:
Cells(Nligne, Ncolonne).Interior.Color = Item.ListSubItems(i).ForeColor

bonne journée
@+
 

Pierrot93

XLDnaute Barbatruc
Re : les lignes soit colorés en bleu et en rouge comme dans la listview

Re

il faut adapter les variables "Nligne" et "Ncolonne" :

Code:
Cells([COLOR="Red"][B]Nligne[/B][/COLOR], [COLOR="red"][B]Ncolonne[/B][/COLOR]).

en les remplacant, soit par des numéros de ligne ou de colonnes, soit par les variables utilisées dans ton code.

@+
 

Pierrot93

XLDnaute Barbatruc
Re : les lignes soit colorés en bleu et en rouge comme dans la listview

Re

à priori dans ton code :

Code:
.Cells([COLOR="Red"][B]Lig [/B][/COLOR]+ 1, [COLOR="red"][B]Col [/B][/COLOR]+ 1).Value = List.ListItems(Lig).ListSubItems(Col).Text

c'est plutôt "lig" et "col", enfin me semble 'il...

@+
 

Pierrot93

XLDnaute Barbatruc
Re : les lignes soit colorés en bleu et en rouge comme dans la listview

Re

un essai, en supposant que c'est sur la dernière partie de ton code que tu veux intervenir :

Code:
For Lig = 1 To List.ListItems.Count
.Range("A" & Lig + 1).Value = List.ListItems(Lig).Text
' Détail des autres colonnes
For Col = 1 To 4
.Cells(Lig + 1, Col + 1).Value = List.ListItems(Lig).ListSubItems(Col).Text
[B].Cells(Lig + 1, Col + 1).Interior.Color = List.ListItems(Lig).ListSubItems(Col).ForeColor[/B]
Next Col
Next Lig
End With
End Sub

bonne soirée
@+
 

Discussions similaires

Statistiques des forums

Discussions
314 499
Messages
2 110 247
Membres
110 711
dernier inscrit
chmessi