Recherche Userform sur format Date

vince78

XLDnaute Nouveau
Bonjour,

Je dois mettre en place une userform qui affiche selon la date les lignes concernées dans une listbox.
Mon problème, c'est que lorsque je rentre le format 02/XX/XXXX plus rien ne s'affiche.
J'ai essayé en transformant ma recherche en CDATE mais sans résultat.
Pourriez me donner un coup de main.

Merci
 

Pièces jointes

  • Test recherche.xlsm
    27 KB · Affichages: 42
  • Test recherche.xlsm
    27 KB · Affichages: 42

mutzik

XLDnaute Barbatruc
Re : Recherche Userform sur format Date

bonjour,,
le code qui fonctionne

Code:
Private Sub TextBox1_AfterUpdate()


    Dim Plage As Range, cell As Range
    Dim Recherche, Adresse As String
    Dim Ligne As Integer, n As Integer
    Dim C As Range
    
    ListBox1.Clear
    n = 0
    Recherche = CDate(TextBox1.Value)
    With Sheets("DDD")
        Ligne = .Range("A" & Rows.Count).End(xlUp).Row
        Set Plage = Sheets("DDD").Range("A2:A" & Ligne)
        
            With Plage
            Set C = .Find(Recherche)
            If Not C Is Nothing Then
                Adresse = C.Address
                Do
                    If UCase(Recherche) = UCase(Left(C, Len(Recherche))) Then
                          ListBox1.AddItem C.Offset(0, 0), n
                             ListBox1.List(n, 0) = C.Offset(0, 0)
                             ListBox1.List(n, 1) = C.Offset(0, 1)
                             ListBox1.List(n, 2) = C.Offset(0, 2)
                             ListBox1.List(n, 3) = C.Offset(0, 3)
                             ListBox1.List(n, 4) = C.Offset(0, 4)
                             ListBox1.List(n, 5) = C.Offset(0, 5)
                                n = n + 1
                    End If
                    Set C = .FindNext(C)
                Loop While Not C Is Nothing And C.Address <> Adresse
            End If
        End With


End Sub
 

PMO2

XLDnaute Accro
Re : Recherche Userform sur format Date

Bonjour,

Changez le code de Private Sub TextBox1_Change par le code suivant
Code:
Private Sub TextBox1_Change()
Dim Plage As Range
Dim C As Range
Dim Recherche As String
Dim n As Long
Dim Ligne As Long
Dim var
Dim i&
'---
ListBox1.Clear
n = 0

If Not IsDate(TextBox1) Then Exit Sub

Recherche = CDate(TextBox1.Value)

Range("A1").Select

Ligne = Sheets("DDD").Range("A" & "65536").End(xlUp).Row
Set Plage = Sheets("DDD").Range("A" & "1:" & "A" & Ligne)

var = Plage
For i& = 1 To UBound(var, 1)
  If var(i&, 1) = Recherche Then
    Set C = Sheets("DDD").Range("A" & i& & "")
  
          ListBox1.AddItem C.Offset(0, 0), n
             ListBox1.List(n, 0) = C.Offset(0, 0)
             ListBox1.List(n, 1) = C.Offset(0, 1)
             ListBox1.List(n, 2) = C.Offset(0, 2)
             ListBox1.List(n, 3) = C.Offset(0, 3)
             ListBox1.List(n, 4) = C.Offset(0, 4)
             ListBox1.List(n, 5) = C.Offset(0, 5)
                n = n + 1
  
  End If
Next i&
End Sub
 

Pièces jointes

  • Test recherche_pmo.xlsm
    23.4 KB · Affichages: 52

Discussions similaires

Statistiques des forums

Discussions
312 206
Messages
2 086 203
Membres
103 157
dernier inscrit
youma