Bonjour,
Toujours néophyte, mais faisant quelques progrès grâce à l'aide précieuse que l'on trouve au sein du forum, je viens vous voir pour une question épineuse, en VBA Excel pour 2003. Comment afficher uniquement les données qui ont moins de 3 mois, dans une ListBox (table excel) ?
Voici mon programme :
	
	
	
	
	
		
Il n'affiche que les données de ce jour. Or, ce que je souhaiterai, c'est que la listbox affiche les données qui ont moins de 3 mois. Je me torture l'esprit, et ne vois pas comment procéder.
Je vous joins également le fichier pour une meilleure visibilité.
Comptant sur votre participation,🙂
	
		
			
		
		
	
				
			Toujours néophyte, mais faisant quelques progrès grâce à l'aide précieuse que l'on trouve au sein du forum, je viens vous voir pour une question épineuse, en VBA Excel pour 2003. Comment afficher uniquement les données qui ont moins de 3 mois, dans une ListBox (table excel) ?
Voici mon programme :
		Code:
	
	
	Private Sub UserForm_Initialize()
   
    '##### INITIALISATION DE LA LISTBOX WIDTH 490 ######
    ListBox1.ColumnCount = 4
    ListBox1.ColumnWidths = "50;320;60;60"
     
   
    '##### Chercher les dernières consultations sur les trois derniers mois ####
    
    Dim Plage As Range, cell As Range
    Dim Recherche As String, FirstAdresse As String
    Dim Ligne As Integer, N As Integer
    Dim C As Range
    Dim CreateDate As Date
    
    ListBox1.Clear
    N = 0
    
    CreateDate = Format(Now(), "DD/MM/YYYY")
        
    Recherche = CreateDate
        
    Range("A1").Select
    Ligne = Sheets("Description").Range("A" & "65536").End(xlUp).Row
    Set Plage = Sheets("Description").Range("b" & "2:" & "b" & Ligne)
    With Plage
    Set C = .Find(What:=CDate(Recherche), LookIn:=xlFormulas, LookAt:=xlPart)
    If Not C Is Nothing Then
    FirstAdresse = C.Address
     
    Do
                   
        ListBox1.AddItem C.Offset(0, 0), N
        ListBox1.List(N, 0) = C.Offset(0, 1)
        ListBox1.List(N, 1) = Left(C.Offset(0, 4), 70) & "..."
        ListBox1.List(N, 2) = C
        ListBox1.List(N, 3) = C.Offset(0, 3)
            
        N = N + 1
                  
    Set C = .FindNext(C)
    Loop While Not C Is Nothing And C.Address <> FirstAdresse
    
    Else
    
    MsgBox Recherche
        
    End If
    
    
    
    End With
    
End Sub
	Il n'affiche que les données de ce jour. Or, ce que je souhaiterai, c'est que la listbox affiche les données qui ont moins de 3 mois. Je me torture l'esprit, et ne vois pas comment procéder.
Je vous joins également le fichier pour une meilleure visibilité.
Comptant sur votre participation,🙂