Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Moteur de recherche par USF

chaelie2015

XLDnaute Accro
Bonsoir Forum
je cherche a créer un moteur de recherche ;
1. dans le combobx1 : il affiche les item du tableau et dans le TextBox10 je saisie Mot clé a rechercher ensuite afficher les résultats au dessous dans USF
salutations
 

Pièces jointes

  • CHARLIE MOTEUR DE RECHERCHE par mot clé.xlsm
    185.6 KB · Affichages: 12
Dernière édition:

chaelie2015

XLDnaute Accro
Bonsoir charlie2015,

Les items ? Quels items ? Et ils vont servir à quoi ?

Bonne nuit.
Bonsoir Job
Nbre.ExpéditeurObjet du courrier de l'expéditeurPièce JointeDate d'arrivée à KDTRéférence du KDTAffecté à KDT-TDate d'enregistrementNuméro d'enregistrement
l’entête du tableau de la feuille BdD Recherche
après si je sélectionne pièce jointe dans ComboBox1 et je saisie dans le TextBox10 : oui
il s'affiche toutes les ligne qu'ils ont dans dans la colonne Pièce joint OUI
 

job75

XLDnaute Barbatruc
Maintenant utiliser un UserForm n'est pas indispensable, perso je préfère filtrer directement la feuille.

Voyez ce fichier (2) et ce code :
VB:
Private Sub ComboBox1_GotFocus()
Dim a(1 To 9), i%
For i = 1 To UBound(a): a(i) = Cells(3, i): Next
ComboBox1.List = a
End Sub

Private Sub ComboBox1_Change()
TextBox1_Change
End Sub

Private Sub TextBox1_Change()
Application.ScreenUpdating = False
If FilterMode Then ShowAllData 'RAZ
If ComboBox1.ListIndex = -1 Then Exit Sub
Dim col%, f$
col = ComboBox1.ListIndex + 1
Select Case col
    Case 1: f = "=ISNUMBER(SEARCH(""" & TextBox1 & """,TEXT(EXP(LN(RC1)),""000"")))"
    Case 5: f = "=ISNUMBER(SEARCH(""" & TextBox1 & """,TEXT(EXP(LN(RC5)),""jjj/jj/mmm/aaaa"")))"
    Case 8: f = "=ISNUMBER(SEARCH(""" & TextBox1 & """,TEXT(EXP(LN(RC8)),""jjj/jj/mmm/aaaa"")))"
    Case Else: f = "=ISNUMBER(SEARCH(""" & TextBox1 & """,RC" & col & "))"
End Select
[K4].FormulaR1C1 = f 'critère
[A3:I60003].AdvancedFilter xlFilterInPlace, [K3:K4] 'filtre avancé, plage modifiable
End Sub
 

Pièces jointes

  • CHARLIE MOTEUR DE RECHERCHE par mot clé(2).xlsm
    49.5 KB · Affichages: 19
Dernière édition:

job75

XLDnaute Barbatruc
J'ai testé en filtrant un tableau de 60 000 lignes (recherche sur une colonne de dates) :

- fichier (1) ou (1 bis) avec UserForm => 0,4 à 0,8 seconde

- fichier (2) sans UserForm => 16 secondes, c'est le ShowAllData qui prend du temps.
 

Discussions similaires

  • Résolu(e)
Microsoft 365 Code de tri
Réponses
22
Affichages
321
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…