Recherche rapide dans un tableau

ckevinc -  
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Question : J'ai un tableau avec plusieurs colonnes dont une des colonne ou est référencé un numéro de série, sachant que dans mon tableau (42 000) lignes il y a plusieurs fois ce numéro de série donc plusieurs lignes correspondant à ce numéro.
Je voudrais maintenant faire une case sur la même feuille une ou il faudrait juste taper le numéro de série et toutes les lignes ou apparaît ce numéro s'affiche automatiquement.
Je posséde déja un filtre dans ce tableau qui permet de faire ce systéme mais pour rendre plus attrayant mon tableau et plus simple d'utilisation je voudrais faire le systéme décrit plus haut.
Merci pour vos réponses
A voir également:

4 réponses

Tomsound Messages postés 113 Statut Membre 1
 
Utilise la touche : " Ctrl + F"

Normalement cela fonctionne, je n'ai pas vérifier, tenez moi au courant,

Tomsound .
0
chossette9 Messages postés 6855 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Bonjour,

non ça ne correspond pas à la demande.

La demande est de pouvoir filtrer le tableau et récupérer seulement les lignes dont le numéro correspond à celui entré dans une cellule.
0
Tomsound Messages postés 113 Statut Membre 1
 
Ah ok ! autant pour moi j'avais mal compris alors attend ^^
0
Tomsound Messages postés 113 Statut Membre 1
 
Après c'est du SQL ... Tableur pas top
0
ckevinc
 
Il n'existe pas une fonction qui permettrai de faire ce systéme?
0
chossette9 Messages postés 6855 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Il faut passer par macro.
0
ckevinc
 
Ton système CTRL+F recherche bien les lignes que je demande mais il met juste la case recherché en surbrillance alors que moi je voudrai qu'il m'affiche que les lignes ou j'ai besoin
0
f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Bonjour a vous tous

Code a mettre dans VBA de le feuille de calcul

'Textbox de saisie sur feuille de calcul(format de controle, propriete: Ne pas deplacer.....)
Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
  'Touche entrer pour valider le choix
  If KeyCode = &HD Then
    'Stop rafraichissement ecran
    Application.ScreenUpdating = False
    'Enleve filtre feuille a adapter
    Worksheets("feuil1").AutoFilterMode = False
    'Choix effectif: plage filtre a adapter
    If TextBox1 <> "" Then
      ActiveSheet.Range("$A$1:$B$8").AutoFilter Field:=1, Criteria1:=TextBox1
    End If
  End If
    'rafraichissement ecran
  Application.ScreenUpdating = True
End Sub

'ou

'Une cellule de saisie
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  'Cellule de saisie a changer
  If Not Application.Intersect(Target, Range("C1")) Is Nothing Then
      'Stop rafraichissement ecran
    Application.ScreenUpdating = False
    'Enleve filtre feuille a adapter
    Worksheets("feuil1").AutoFilterMode = False
    'Choix effectif: plage filtre a adapter
    If Target <> "" Then
      ActiveSheet.Range("$A$1:$B$8").AutoFilter Field:=1, Criteria1:=Target
    End If
  End If
  'rafraichissement ecran
  Application.ScreenUpdating = True
End Sub


Bonne suite
0
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 448
 
Bonjour
une option sans macro si vous pouvez admettre une colonne de codage qui peut être masquée.
exemple à adapter:
en Feuil1 A1 le code à éditer

en Feuil2 votre tableau
de A2 à W100 vos données
X1 reste vide ou texte
en colonne B de votre tableau à partir de B2 jusqu'à B100, les codes en vrac
en colonne X de cette feuille en X2 la formule à tirer jusqu'en X100
=SI('FEUIL1'$A$1=B2);MAX($X$1:X1)+1;0)

Sur Feuil1 en A2 et à tirer sur la hauteur voulue

=SI(LIGNE()-1<=MAX('feuil2';$B$2:$B$100;INDEX('Feuil2'!$A$2:$W$100;EQUIV(LIGNE()-1;'Feuil2'!$X$2:$X$100;0);COLONNE());"")
attention aux signes
vous donnera la liste des mêmes codes sur la hauteur avec les infos respectives à chaque ligne concernées, mais sans "trou"
et en tirant vers la droite vous renverra pour chaque ligne la valeur de la colonne au N° correspondant
pour info
la valeur LIGNE() renvoie le N° de ligne de la feuille ajustable selon la position d e la formule par + ou - valeur de correction, de façon à obtenir la valeur voulue, soit 1 pour la première ligne.
Idem pour le code COLONNE qui donne le N° de colonne du champ INDEX

bonne chance entre les deux propositions
crdlmnt
0