macro recherche

jean paul

XLDnaute Junior
Bonjour à tous
je souhaite utiliser un fichier avec un userform de recherche trouvé sur le forum ,j'ai voulu l'adapter en y rajoutant 2 lignes de codes pour avoir 2 colonnes supplémentaires mais ca bug sur ces lignes,je n'arrive pas à voir ou est l'erreur ou est ce normal
merci de votre aide
jean paul


-lignes ajoutées
ListBox1.List(N, 10) = C.Offset(0, 8)
ListBox1.List(N, 11) = C.Offset(0, 9)
 

Pièces jointes

  • Copie de recherche.zip
    21.2 KB · Affichages: 40
  • Copie de recherche.zip
    21.2 KB · Affichages: 37
  • Copie de recherche.zip
    21.2 KB · Affichages: 43

Paritec

XLDnaute Barbatruc
Re : macro recherche

Bonjour Jean Paul, le forum,
je pense que c'est normal les listbox je crois n'acceptent que 10 colonnes au max,
et toi tu en veux 12 !!! il y a une solution mais je cherche et je reviens vers toi
a+
papou
 

Hulk

XLDnaute Barbatruc
Re : macro recherche

Hello Forum, Jean-Paul, Paritec,

Modifie ces deux codes comme ci-dessous, et suprimme la colonne F (vide)
Code:
Private Sub TextBox1_Change()
Dim Plage As Range, cell As Range
Dim Recherche As String, Adresse As String
Dim Ligne As Integer, N As Integer
Dim C As Range
ListBox1.Clear
N = 0
Recherche = TextBox1.Value
Range("C1").Select
Ligne = Sheets("bdd").Range("C" & "65536").End(xlUp).Row
Set Plage = Sheets("bdd").Range("C" & "1:" & "C" & Ligne)
With Plage
Set C = .Find(Recherche, , xlValues)
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
        ListBox1.List(N, 1) = C.Offset(0, -2)
        ListBox1.List(N, 2) = C.Offset(0, -1)
        ListBox1.List(N, 3) = C.Offset(0, 1)
        ListBox1.List(N, 4) = C.Offset(0, 2)
        ListBox1.List(N, 5) = C.Offset(0, 3)
        ListBox1.List(N, 6) = C.Offset(0, 4)
        ListBox1.List(N, 7) = C.Offset(0, 5)
        ListBox1.List(N, 8) = C.Offset(0, 6)
        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
Code:
Private Sub UserForm_Initialize()
ListBox1.ColumnCount = 7
ListBox1.ColumnWidths = "150;100;50;150;50;40;100"
End Sub
Je pense que ça joue comme ça.

Cdt, Hulk.
 

Paritec

XLDnaute Barbatruc
Re : macro recherche

bonjour hulk jean paul le forum,
oui Hulk mais son code marchait déjà avec 9 colonnes, c'est avec 12 que cela na marche plus.
donc tu as raison pour ta solution, mais si Jean Paul veut 12 colonnes je suppose que c'est pour quelque chose de précis?
Moi je me rappelle que pour mes listbox qui ont plus de 10 colonnes il fallait je crois passer par un tableau et là c'est bon ça marche mais je ne retrouve pas !!!
a+
bon dimanche
Papou
 

jean paul

XLDnaute Junior
Re : macro recherche

bonjour hulk ,papou etle forum,

j'ai ajouté une 2eme listbox ,je ne sais pas si c'est la bonne solution mais ca l'air de marcher
merci de votre collaboration et bon weekend
jean paul
 

Pièces jointes

  • Copie de recherche.zip
    22.1 KB · Affichages: 64
  • Copie de recherche.zip
    22.1 KB · Affichages: 65
  • Copie de recherche.zip
    22.1 KB · Affichages: 63

Discussions similaires

Réponses
5
Affichages
993

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 489
Messages
2 088 852
Membres
103 974
dernier inscrit
chmikha