Formule excel

Bonjour,

J'ai une liste de nom en feuille 1 avec une réponse associé (oui ou non ) et je souhaiterai récupérer sur la feuille 2 les noms des personnes ayant répondu oui...

Si quelqu'un à la formule...

Merci d'avance.

8 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    Bonjour,

    b = 1
    For a = 1 To Range("A1").End(xlDown).Row
    If Worksheets("Feuil1").Cells(a, 2).Value = "OUI" Then
    Worksheets("Feuil2").Cells(b, 1).Value = Worksheets("Feuil1").Cells(a, 1)
    b = b + 1
    End If
    Next
    1. Désolé mais ta réponse n'est pas très clair pour moi...

      Tu peux développer...?
      1. Contributeur
        dans ta feuille 1, cré un bouton

        Dans ce bouton, met le code vba....
    2. Salut,

      Pourquoi passer avec un code VBA, une simple formule suffit pour compter le nombre de oui

      exemple tes données sont feuille 1 de A2 à A30 pour les Nom et de B2 à B30 pour les réponses oui ou non

      en feuille 2 la formule est

      =NB.SI(Feuil1!B2:B30;"oui")

      et si on nomme la plage B2 à B30 exemple titi (Insertion/Nom/Définir le formule peut être utilisée sur n'importe quelle feuille et devient

      =NB.SI(titi;"oui")

      et pour récupérer les noms également une autre formule que je développerai dans un moment je suis dans l'obligation de m'absenter
      A+
      Mike-31

      Une période d'échec est un moment rêvé pour semer les graines du savoir.
      1. Euh il me semble que Goth souhaiterai récupérer le nom des personnes ayant répondu "Oui", pas le nombre. Aussi je ne pense pas que le NB.SI soit la réponse attendu. La macro n'est pas mal je pense, mais ne suis pas certain que ce soit totalement nécessaire d'aller au plus compliqué. Pourquoi ne pas utiliser un filtre ? Tu mets ta première ligne en filtre, et tu filtres la colonne de "Oui" et "Non" sur "Oui". Excel te masquera alors tous les noms ayant répondu autre chose que "Oui".
        1. Re,

          voilà,
          exemple la plage contenant les noms nommée Nom (Insertion/Nom/Définir)
          la plage contenant les oui et non nommée réponse
          sur n'importe quelle feuille coller cette formule matricielle
          dans mon exemple on fait référence à la cellule D1 ou l'on saisiera oui ou non valeur de référence recherchée ou on créera une liste déroulante

          =SI(LIGNES($1:1)<=NB.SI(réponse;$D$1);INDEX(Nom;PETITE.VALEUR(SI(réponse=$D$1;LIGNE(INDIRECT("1:"&LIGNES(réponse))));LIGNES($1:1)));"")
          à confirmer en pressant en même temps sur les touches Ctrl, Shift et Entrée
          (la touche Shift est la touche majuscule)

          si la confirmation est bien faite la formule se mettra entre {} et prendra cette forme
          {=SI(LIGNES($1:1)<=NB.SI(réponse;$D$1);INDEX(Nom;PETITE.VALEUR(SI(réponse=$D$1;LIGNE(INDIRECT("1:"&LIGNES(réponse))));LIGNES($1:1)));"")}

          ensuite clic sur la cellule contenant la formule et incrémenter vers le bas

          si tu as besoin d'un exemple fais signe
          1. Contributeur
            Re,

            Un exemple concret :

            http://www.jjsteing.com/AEL/Dld.php?Fichier=Download/test2.zip

            @++
            1. Merci pour vos réponses...

              J'vais essayer les divers propositions.

              A bientôt.