Fonction recherche sur 2 listviews dans un userform

LOLO28

XLDnaute Nouveau
Bonjour à tous,
La LISTVIEW1 =Source feuil"THSauvegarde"
La LISTVIEW2 = source feuil " facture validee"
lorsque je fais une recherche en indiquant par ex:abc.27-2*
la source de l'affichage de la listview change.cela affiche le contenu de la feuil " facture validée"
ce que je souhaitais faire c'est lorsque je recherche une valeur ex abc.27-2* cela s'affiche dans les 2 listviews si bien sur la valeur existe.
Dans la textbox 26
j'ai affiché ce code
Private Sub TextBox26_Change()
Alimente_ListView1
Alimente_ListView2
End Sub
Merci de votre aide
 

Pièces jointes

  • Copie de essai recherche-1.xls
    260.5 KB · Affichages: 36
  • Copie de essai recherche-1.xls
    260.5 KB · Affichages: 34

Lone-wolf

XLDnaute Barbatruc
Re : Fonction recherche sur 2 listviews dans un userform

Bonsoir LOLO,

Il faut déjà être plus clair dans ta demande. Que doit afficher la ListView1 et que doit afficher la ListView2 ??? Avoir le même résultat dans les deux, je ne vois pas trop l'intérêt. Un exemple à adapter à ton projet.

Code:
Private Sub UserForm_Initialize()

  With Me.ListView1
     .Gridlines = True
     .View = lvwReport
     .FullRowSelect = True
     .ColumnHeaders.Add Text:="ID", Width:=1
     .ColumnHeaders.Add Text:="Commande", Width:=90
     .ColumnHeaders.Add Text:="Date Commande", Width:=80
End With

With Me.ListView2
     .Gridlines = True
     .View = lvwReport
     .FullRowSelect = True
     .ColumnHeaders.Add Text:="Réf Comm.", Width:=1
     .ColumnHeaders.Add Text:="Article", Width:=185
     .ColumnHeaders.Add Text:="Quantité", Width:=45, Alignment:=fmAlignmentRight
     .ColumnHeaders.Add Text:="Prix", Width:=55, Alignment:=fmAlignmentRight
     .ColumnHeaders.Add Text:="Remise", Width:=50, Alignment:=fmAlignmentRight
     .ColumnHeaders.Add Text:="Sous Total", Width:=55, Alignment:=fmAlignmentRight
     .ColumnHeaders.Add Text:="Total", Width:=55, Alignment:=fmAlignmentRight
 End With

Private Sub CmbRepresentant_Change()
Dim ItemCmde As ListItem
On Error Resume Next
  Me.ListView1.ListItems.Clear
  Set Wksh = Sheets("Commandes Clients")
  Set plage = Wksh.[E1].CurrentRegion
  Set plage = plage.Offset(1).Resize(plage.Rows.Count - 1)
  Set cel = plage.Find(Me.CmbRepresentant, , , xlWhole)
  If Not cel Is Nothing Then
    premaddress = cel.Address
    Do
      Set ItemCmde = Me.ListView1.ListItems.Add(Text:=cel.Offset(0, -4))
      ItemCmde.SubItems(1) = cel.Offset(0, -3)
      ItemCmde.SubItems(2) = cel.Offset(0, -2)
      Me.TxtNbCmdes.Value = Me.ListView1.ListItems.Count
      Set cel = plage.FindNext(cel)
    Loop While Not cel Is Nothing And cel.Address <> premaddress
End If
  Me.ListView2.ListItems.Clear
  Me.ListView3.ListItems.Clear
End Sub

Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
Dim ItemDtC As ListItem, ItemCCl As ListItem
With ListView2
 Set Wksh = Sheets("Details Commandes")
  Set plage = Wksh.[A1].CurrentRegion
  Set plage = plage.Offset(1).Resize(plage.Rows.Count - 1)
  Set cel = plage.Find(Item.SubItems(1), , , xlWhole)
  If Not cel Is Nothing Then
  premaddress = cel.Address
  .ListItems.Clear
  Do
    Set ItemDtC = .ListItems.Add(Text:=cel.Offset(0, 0))
      ItemDtC.SubItems(1) = cel.Offset(0, 1)
      ItemDtC.SubItems(2) = cel.Offset(0, 2)
      ItemDtC.SubItems(3) = Format(cel.Offset(0, 3), "0.00.-")
      ItemDtC.SubItems(4) = Format(cel.Offset(0, 4) / 100, "0%")
      ItemDtC.SubItems(5) = Format(cel.Offset(0, 5), "0.00.-")
     ItemDtC.SubItems(6) = Format(cel.Offset(0, 6), "0.00.-")
 Set cel = plage.FindNext(cel)
    Loop While Not cel Is Nothing And cel.Address <> premaddress
    End If
End Sub


EDIT: Bonsoir Martial :D

A+ :cool:
 
Dernière édition:

Yaloo

XLDnaute Barbatruc
Re : Fonction recherche sur 2 listviews dans un userform

Bonjour LOLO,

Vois avec ton classeur modifié.

A+

Martial
 

Pièces jointes

  • Copie de essai recherche-1.xls
    262.5 KB · Affichages: 40
  • Copie de essai recherche-1.xls
    262.5 KB · Affichages: 43

LOLO28

XLDnaute Nouveau
Re : Fonction recherche sur 2 listviews dans un userform

bonsoir,
dans la listeview1 je veux afficher la Feuil th sauvegarde et dans le listview2 le feuil facture validée.
lorsque je fais une recherche ex: abc27-2 les valeurs de la listview1 changent avec les valeurs de la listview2.donc je ne peux verifier si la valeur recherche se situent dans les deux feuilles
merci de votre aide
 

Discussions similaires

Statistiques des forums

Discussions
312 207
Messages
2 086 238
Membres
103 162
dernier inscrit
fcfg