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

Microsoft 365 Recherche plusieurs données

  • Initiateur de la discussion Initiateur de la discussion azerty64
  • 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 !

azerty64

XLDnaute Junior
Bonjour à tous,

Aujourd'hui je fais appel aux meilleurs 😉
Je souhaiterai avoir une formule ou du VBA, le plus simple pour vous, me permettant de faire ressortir plusieurs données d'une base en fonction d'un critère.
Dans une base de données (feuil 2) on va retrouver plusieurs critères avec une multitude de "résultats" et dans la "feuil 1" la synthèse dans laquelle se trouve un seul critère mais je veux avoir tous les résultats qu'il lui sont affecté.
Vous trouverez en PJ une explication plus concrète.
Bon courage et merci de votre aide 😘

cordialement,
azerty64
 

Pièces jointes

Solution
Bonjour Azerty,
Un essai en PJ avec :
VB:
Sub ChercheData()
    Dim DL, c, i, j
    Application.ScreenUpdating = False
    Range("B2:B" & (1+Range("B65500").End(xlUp).Row)).ClearContents
    DL = Range("H65500").End(xlUp).Row
    tablo = Sheets("Feuil2").[A1].CurrentRegion
    IndW = 2
    For c = 2 To DL
        Critere = Cells(c, "H")
        For i = 2 To UBound(tablo)
            If tablo(i, 1) = Critere Then
                For j = 1 To 4
                    Cells(IndW, j + 1) = tablo(i, j)
                Next j
                IndW = IndW + 1
            End If
        Next i
    Next c
End Sub
Bonjour Azerty,
Un essai en PJ avec :
VB:
Sub ChercheData()
    Dim DL, c, i, j
    Application.ScreenUpdating = False
    Range("B2:B" & (1+Range("B65500").End(xlUp).Row)).ClearContents
    DL = Range("H65500").End(xlUp).Row
    tablo = Sheets("Feuil2").[A1].CurrentRegion
    IndW = 2
    For c = 2 To DL
        Critere = Cells(c, "H")
        For i = 2 To UBound(tablo)
            If tablo(i, 1) = Critere Then
                For j = 1 To 4
                    Cells(IndW, j + 1) = tablo(i, j)
                Next j
                IndW = IndW + 1
            End If
        Next i
    Next c
End Sub
 

Pièces jointes

- 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
5
Affichages
242
Réponses
7
Affichages
318
Réponses
4
Affichages
410
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…