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

XL 2016 FONCTION RECHERCHE

  • Initiateur de la discussion Initiateur de la discussion mcj1997
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Bonjour,

Ci joint deux exemples par Power Query et vba (pour la mise à jour)
La première requêtes modifie les types de donnée avant recherche et la deuxième en cours de recherche.
Vous avez des 'Tailles' qui ne sont pas des nombres mais des textes, 1.9 au lieu de 1,9 ce qui obligerait dans la première à des gymnastiques chronophages pour retrouver le type idoine de la colonne après recherche.

La recherche ne tient pas compte de la casse.
Pour trouver les lignes d'août de n'importe quelle année, tapez : /08

Cordialement
 

Pièces jointes

@M12 Bien sûr s'il y a beaucoup de lignes il faut mettre les résultats dans une autre feuille.

mcj1997 est "Accro", il devrait pouvoir adapter la macro facilement.
Après tentative, je vais avoir besoin d'aide pour faire en sorte d'avoir deux fichiers, un sur lequel il y aurait le tableau des différents renseignements et sur l'autre fichier la cellule ou mettre le nom ou chiffres recherchés avec la restitution des lignes en dessous.

Merci d'avance,
 
Vous avez 1057 posts à votre actif, vous devriez être capable d'aboutir à ça :
VB:
'---restitution---
With Sheets("Résultat")
    If .FilterMode Then .ShowAllData 'si la feuille est filtrée
    With .[A2] '1ère cellule des résultats, à adapter
        If n Then .Resize(n, ncol) = resu
        .Offset(n).Resize(Rows.Count - n - .Row + 1, ncol).ClearContents 'RAZ en dessous
    End With
    .Columns.AutoFit 'ajuste les largeurs
    With .UsedRange: End With 'actualise la barre de défilement verticale
    .Activate 'facultatif
End With
End Sub
 

Pièces jointes

je vais chercher comment mettre la cellule ou indiquer la valeur cherchée dans la feuille "Résultat".
Voyez ce fichier (3) et ces 2 macros dans le code de la feuille "Recherche" :
VB:
Private Sub Worksheet_Activate()
Worksheet_Change [A1] 'lance la macro
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
Dim cible$, ncol%, tablo, i&, j%, n&, k%
If [A1] <> "" Then cible = "*" & UCase([A1]) & "*"
ncol = 6 'à adapter
tablo = Sheets("BDD").[A1].CurrentRegion.Resize(, ncol) 'matrice, plus rapide
ReDim resu(1 To UBound(tablo), 1 To ncol)
For i = 2 To UBound(tablo)
    For j = 1 To ncol
        If UCase(tablo(i, j)) Like cible Then
            n = n + 1
            For k = 1 To ncol: resu(n, k) = tablo(i, k): Next k
            Exit For
        End If
Next j, i
'---restitution---
Application.EnableEvents = False 'désactive les évènements
If FilterMode Then ShowAllData 'si la feuille est filtrée
With [A3] '1ère cellule des résultats, à adapter
    If n Then .Resize(n, ncol) = resu
    .Offset(n).Resize(Rows.Count - n - .Row + 1, ncol).ClearContents 'RAZ en dessous
End With
Columns(2).Resize(, Columns.Count - 1).AutoFit 'ajuste les largeurs
With UsedRange: End With 'actualise la barre de défilement verticale
Application.EnableEvents = True 'réactive les évènements
End Sub
Le tableau est mis à jour quand on modifie ou valide une cellule quelconque ou qu'on active la feuille.
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
30
Affichages
788
Réponses
6
Affichages
244
Réponses
4
Affichages
177
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…