XL 2019 Combinaison RechercheV + NB.SI

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 !

Pieerre69

XLDnaute Junior
Bonjour à tous,

Je n'arrive pas à mettre des mots sur mon problème, alors je vous joint une image bien plus parlante.

Annotation 2020-02-10 123512.png
Annotation 2020-02-10 135712_LI.jpg


Dans mon code (joint ci-après), je demande à l'utilisateur de saisir le numéro d'anomalie pour lui renvoyer le reste des DATA.
Je fais ensuite une RechercheV avec le numéro d'anomalie saisie, et il me renvoie successivement la valeur de la colonne 2, 3 et 4.

Pour l'instant j'ai donc la première ligne "Code Article, Designation et Qte" pour mon n° 25.
Je voulais faire une boucle pour tout i allant de 1 à [nombre de fois que 25 se trouve dans le tableau A11: D&{DerLigne}], mais la rechercheV renvoie toujours la première valeur qu'elle trouve..
Avez-vous une solution ?

Merci d'avance.

VB:
Sub editer_fiche_enfant()

DerLig = (Sheets("BDD").Cells(65536, 1).End(xlUp).Row) + 1

n°anomalie = InputBox("VEUILLEZ CHOISIR UN NUMERO D'ANOMALIE", "EDITER UNE FICHE ENFANT")
nb_anomalie = Application.CountIf(Sheets("BDD").Range("A" & "11" & ":A" & DerLig), n°anomalie)

For i = 1 To nb_anomalie

    With Sheets("MAGASIN 1")
        .Cells(9 + (i * 2), 11).Value = Application.VLookup(n°anomalie, Sheets("BDD").Range("A" & "11" & ":D" & DerLig), 2, False)
        .Cells(9 + (i * 2), 12).Value = Application.VLookup(n°anomalie, Sheets("BDD").Range("A" & "11" & ":D" & DerLig), 3, False)
        .Cells(9 + (i * 2), 13).Value = Application.VLookup(n°anomalie, Sheets("BDD").Range("A" & "11" & ":D" & DerLig), 4, False)
    
    End With
Next i


End Sub
 

Pièces jointes

  • Annotation 2020-02-10 123512.png
    Annotation 2020-02-10 123512.png
    40.1 KB · Affichages: 7
Bonjour,

J'ai pas compris grand chose mais déjà une première indication qui a son importance : la fonction RECHERCHEV s'arrete à la première occurrence par définition. Donc, si tu veux autre chose, il ne faut pas utiliser RECHERCHEV.

Bonne continuation
 
Bonjour,

J'ai pas compris grand chose mais déjà une première indication qui a son importance : la fonction RECHERCHEV s'arrete à la première occurrence par définition. Donc, si tu veux autre chose, il ne faut pas utiliser RECHERCHEV.

Bonne continuation

Je me doute bien que je n'ai pas été assez clair.. Je n'arrive même pas à mettre par écrit ce que je souhaite dans ma tête ! 😀

Quelle alternative j'ai à la rechercheV mais qui prenne en compte des occurences ?

Dans mon exemple, je souhaite que le programme renvoie la valeur de la colonne X à chaque fois qu'il trouve le n° d'anomalie que l'utilisateur a demandé (dans l'exemple c'est le n°25).
La rechercheV va me renvoyer la valeur correspondant à la première occurrence.
Je souhaite qu'il continue à me renvoyer les valeurs de la colonne X sans prendre en compte les valeurs qu'il a déjà renvoyé..
Si ça rend le problème plus clair..
 
Bonjour à tous,

Avec une image, il faut reproduire tout le fichier et je pense que tu n'auras pas beaucoup de réponse en formule ou en VBA.
un truc du genre index(plage;petite.valeur(si(plage=25;ligne(plage));ligne(1:1))
en matricielle bien sûr.

JHA
 
Bonjour,

Si j'ai bien compris, il te faut une sommeprod.
Sans fichier joint, difficile de te montrer ce que je veux dire mais en gros il te faut un =SOMMEPROD((A_:A_=25)*B_:B_)

Cette formule te renvoie les valeurs de la colonne B pour chaque présence de 25 dans la colonne A.

Bonne continuation
 
- 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
10
Affichages
299
Réponses
2
Affichages
218
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
536
Réponses
1
Affichages
187
Réponses
8
Affichages
486
Réponses
4
Affichages
212
Retour