afficher dans la listview les lignes qui sont supérieur à 90 jours

petchy

XLDnaute Occasionnel
bonjour
à l'aide d'un USF j'envoi des données sur une feuille
colonne A:Date
colonne B:Nom
colonne C:prénom
colonne D:Divers
dans un autre USF j'ai une listview
comment faire pour afficher dans la listview les lignes qui sont supérieur à 90 jours par rapport à la date systeme.
merci
 

bqtr

XLDnaute Accro
Re : afficher dans la listview les lignes qui sont supérieur à 90 jours

Bonjour petchy

Je m'essaye aux ListView :eek:

Teste ceci :

Code:
Private Sub UserForm_Initialize()

Dim i As Long, k As Byte
With ListView1
    With .ColumnHeaders
      .Clear
      .Add , , Range("A1"), Range("A1").Width
      .Add , , Range("B1"), Range("B1").Width, lvwColumnCenter
      .Add , , Range("C1"), Range("C1").Width, lvwColumnCenter
      .Add , , Range("D1"), Range("D1").Width, lvwColumnCenter
    End With
End With
ListView1.View = lvwReport

For i = 2 To Range("A65536").End(xlUp).Row
    If Cells(i, 1) > Date + 90 Then
      ListView1.ListItems.Add , , Cells(i, 1)
            For k = 2 To 4
             ListView1.ListItems(ListView1.ListItems.Count).ListSubItems.Add , , Cells(i, k)
            Next
    End If
Next

End Sub

Bonne soirée
 

petchy

XLDnaute Occasionnel
Re : afficher dans la listview les lignes qui sont supérieur à 90 jours

bonjour
merci pour ta réponses,mais il y a un probleme
tous est afficher dans la listview
dans la colonne A j'ai une date et c'est par rapport à cette date que je veut faire afficher tous se qui est superieur à 90 jours
@ plus
 

bqtr

XLDnaute Accro
Re : afficher dans la listview les lignes qui sont supérieur à 90 jours

Re Bonjour,

Dans ton premier message tu parlais de Date système, d'où la présence du code Date + 90.

Peux tu mettre un bout de fichier avec une quinzaine de lignes et ton USF avec ta listView, surligne les lignes qui doivent être reprises dans la ListView.

dans la colonne A j'ai une date et c'est par rapport à cette date que je veut faire afficher tous se qui est superieur à 90 jours

là je ne comprends pas trop ce que tu souhaites. Quelle date faut-il prendre pour déterminer le point de départ du calcul.


A+
 

petchy

XLDnaute Occasionnel
Re : afficher dans la listview les lignes qui sont supérieur à 90 jours

bonjour

jean pierrre merci pour ta réponse mais ça ne fonctionne pas,il n'y à rien dans la listview
JP merci aussi mais ça ne fonctionne pas non plus
@ plus
 

excalibur

XLDnaute Impliqué
Re : afficher dans la listview les lignes qui sont supérieur à 90 jours

bonjour le fil j ai cree une listView puis teste avec le code de l ami bqtr
son code marche j ai change la condition comme j ai cru comprendre
recuperer toutes les dates inferieur a 90 jours par apport a now
Private Sub UserForm_Initialize()
Dim i As Long, k As Byte
With ListView1
With .ColumnHeaders
.Clear
.Add , , Range("A1"), Range("A1").Width
.Add , , Range("B1"), Range("B1").Width, lvwColumnCenter
.Add , , Range("C1"), Range("C1").Width, lvwColumnCenter
.Add , , Range("D1"), Range("D1").Width, lvwColumnCenter
End With
End With
ListView1.View = lvwReport
For i = 2 To Range("A65536").End(xlUp).Row
If Cells(i + 90, 1) < Date And Cells(i, 1) < Date Then
ListView1.ListItems.Add , , Cells(i, 1)
For k = 2 To 4
ListView1.ListItems(ListView1.ListItems.Count).ListSubItems.Add , , Cells(i, k)
Next
End If
Next
End Sub
 

petchy

XLDnaute Occasionnel
Re : afficher dans la listview les lignes qui sont supérieur à 90 jours

bonsoir

merci pour ta patience,mais il n'y à rien qui s'affiche dans la listview,le code de bqtr
fonctionne il affiche tous les items de ma liste,mais se qui m'interesse c'est celle qui sont supérieur à 90 jours et la rien,je ne comprends pas.
 

jp14

XLDnaute Barbatruc
Re : afficher dans la listview les lignes qui sont supérieur à 90 jours

Bonsoir

IL faut verifier en utilisant le pas à pas si le test concernant la comparaison des dates fonctionne.
Se positionner sur la ligne du test et appuyer sur F9
If Cells(i + 90, 1) < Date And Cells(i, 1) < Date Then
mettre des espions sur Cells et Date.
Lancer l'USF et vérifier les valeurs.

JP
 

bqtr

XLDnaute Accro
Re : afficher dans la listview les lignes qui sont supérieur à 90 jours

Re, Bonsoir JP, Jean Pierre,

Je mettrais plutôt ceci:

Code:
If Cells(i, 1) + 90 < Date Then

If Cells(i + 90,1) < Date And Cells(i, 1) < Date
Pour i = 2, on compare si la cellule A92 est inférieure au 19/01 et si la cellule A2 est inférieure au 19/01.

Bonne soirée



 

petchy

XLDnaute Occasionnel
Re : afficher dans la listview les lignes qui sont supérieur à 90 jours

Re

je suis vraiment désolé,mais je viens de comprendre pourquoi ça ne fonctionnait pas,c'est à cause de la date
elle s'écrivait ainsi
samedi 19 janvier 2008
voila le probleme
maintenant je l'écris ainsi
18/01/08
et la ça fonctionne,pour l'instant ;)
avec se code
If Cells(i + 90, 1) < Date And Cells(i, 1) < Date Then
encore une fois désolé
et un grand merci pour votre aide
 

Discussions similaires

Statistiques des forums

Discussions
312 836
Messages
2 092 655
Membres
105 479
dernier inscrit
chaussadas.renaud