IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

RechercheV et doublons


Sujet :

Excel

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 26
    Par défaut RechercheV et doublons
    bonjour
    je sais que ce thème est souvent abordé.
    ma problématiques est la suivante.
    j'ai un fichier de trésorerie (date, nom client, montant)
    durant l'année ces clients me payent plusieurs factures,
    je cherche a faire un état récap dans lequel j'aurais tous les versements de chaque clients
    un petit coup de main m'aiderai bp
    /!\ je ne peux pas utiliser de TCD

    je vous joints une PJ

    Dany
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    je vous joints une PJ
    http://www.developpez.net/forums/d84...s-discussions/

    Imaginons que tes données soient en A1:C100 dans l'ordre où tu les décris.
    Imaginons que tu as la liste de tous tes clients en E1:E10
    Mets en F1 la formule suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMME.SI(B$1:B$100;E1;C$1:C$100)
    Tu copies cette cellule vers le bas autant de fois que tu as de clients.

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 26
    Par défaut
    Imaginons que tes données soient en A1:C100 dans l'ordre où tu les décris.
    Imaginons que tu as la liste de tous tes clients en E1:E10
    Mets en F1 la formule suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMME.SI(B$1:B$100;E1;C$1:C$100)
    Tu copies cette cellule vers le bas autant de fois que tu as de clients.[/QUOTE]


    j'ai essayé mais j'ai que des 0.

    en fait je veux saisir le code client en A1 sur la feuil2 et voir s'afficher en dessous toutes les factures du client avec la date, le nom et le montant réglé.
    exemple, je saisi 1971 et ça affiche en dessous

    05-janv martin 60 1971
    05-avr martin 60 1971
    05-juil martin 60 1971
    05-oct martin 60 1971

    merci d'avance

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Le plus pratique et rapide est que tu poses un filtre sur ton tableau.
    Tu sélectionnes toutes tes colonnes > Ruban Données > Icone filtrer.

    Des icones en forme de flèches vers le bas devraient apparaitre dans les entêtes de ton fichier.
    Tu cliques sur celle se trouvant dans l'entête du code client.
    Tu décoches (sélectionner tout) et tu coches le code dont tu souhaites les renseignements.

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 26
    Par défaut
    oui c'est la solution de simplicité à laquelle j'ai pensé avant de poser ma question,
    mais si je dois faire ça pour chaque client, je suis pas sorti de l'auberge.
    d'autant plus que je dois conserver ces données.

    donc cette solution ne me convient pas.

  6. #6
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Je ne pense pas que ce que tu demandes puisse se faire sans macro VBA.

  7. #7
    Membre Expert

    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2012
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 564
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    En déclarant comme tableau (Tableau 1) la plage de données de la feuille 1, on peut créer en feuille 2 un tableau semblable à celui de l'image ci-dessous.
    Nom : caisse bis.JPG
Affichages : 1743
Taille : 33,5 Ko
    En entrant un n° de client en A2, on peut obtenir:
    -‏ son nom en B2 avec la formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =INDEX(Tableau1[libellé];EQUIV(Feuil2!A2;Tableau1[n° client];0))
    - le nombre de versements en C2 avec la formule:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =NB.SI(Tableau1[n° client];Feuil2!A2)
    - les dates des versements en colonne E avec en E2 la formule matricielle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SIERREUR(PETITE.VALEUR(SI(Tableau1[n° client]=Feuil2!$A$2;Tableau1[date];"");LIGNE()-1);"")
    à valider par Ctrl + Maj + Entrée et à recopier vers le bas dans la colonne.
    - le montant de chaque versement en colonne F avec en F2 la formule:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMME.SI.ENS(Tableau1[montant];Tableau1[n° client];Feuil2!$A$2;Tableau1[date];Feuil2!E2)
    à recopier vers le bas dans la colonne.
    - le total des montants versés en colonne D avec en D2 la formule:
    à recopier vers le bas dans la colonne.
    Les cellules utilisées des deux colonnes D et F sont formatées avec le format personnalisé 0;;;@
    Cordialement
    Claude
    Fichiers attachés Fichiers attachés

  8. #8
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 3
    Par défaut Premier message :)
    Alors,

    Si j'ai bien compris,

    Tu souhaites seulement savoir les versements de tes clients.

    1) En H2, met ton numero de client ex 1971 , en H3 tu mets le nombre 0, en h4 formule : =LIGNE(INDEX(DECALER($D$2:$D$19;H3;EQUIV($H$2;DECALER($D$2:$D$19;H3;0)))

    2) en G2 tu mets ton numéro de client le même 1971, en G2 tu mets la formule : =INDEX(DECALER($C$2:$C$19;H3;EQUIV($G$2;DECALER($D$2:$D$19;H3;0))

    Je te laisse étirer la formule et géré tes plages + tu as besoin de deux colonnes a chaque fois

    L’intérêt de cette formule et de te décaler tes plages de données pour ne pas reprendre le même résultat. Bon dans ton exemple les montants sont identiques ce qui n'est pas très malin pour vérifier à l'oeil.

    Chez moi en tout cas ça fonctionne, si tu souhaites avoir d'autre information comme le libellé ou autre tu as juste à modifier les places.

    En espérant avoir pu t'aider

    SEYES

  9. #9
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2016
    Messages : 3
    Par défaut 2 eme message ..
    Bon après relecture je me suis très mal exprimé..

    Pour le Point 2, tu mets la formule en G3 et non G2 ...

    Les formules sans smiley ..

    1)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =LIGNE(INDEX(DECALER($D$2:$D$19;H3;EQUIV($H$2;DECALER($D$2:$D$19;H3;0)))
    2)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =INDEX(DECALER($C$2:$C$19;H3;EQUIV($G$2;DECALER($D$2:$D$19;H3;0))
    C'est bien mieux

  10. #10
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Citation Envoyé par DANIEL 69007 Voir le message
    donc cette solution ne me convient pas.
    Donc, c'est Excel qui ne convient pas.

    C'est comme arriver à l'hôpital pour se faire soigner une jambe cassée par le psychiatre parce que l'orthopédiste coûte supposément trop cher.

    Avec Access, ou n'importe quel vrai SGBD, une banale requête SQL te donne cela en deux temps trois mouvements. Mais non, c'est bien mieux (le maudit) Excel avec (une maudite) usine à gaz.

    Le pire, c'est que l'on peut avoir gratuitement Visual Studio Community, avec une version gratuite de SQL Server Compact. Apprendre Visual Basic .net et monter une petite base de données avec SQL Srver Compact, ou une plus grosse avec SQL Server Express (gratuit), c'est encore moins de trouble que de bâtir une usine à gaz avec VBA. D'autant plus qu'il existe un paquet d'exemples de manipulation de SQL Server avec VB.net, et probablement plus en C#. Même que Visual Studio Community a des outils pour faire graphiquement une grosse partie de la job, comme dans Access.

    Mais bon, je suis habitué à me faire stupidement répondre : "Je n'ai pas le choix."

Discussions similaires

  1. [XL-2013] Recherchev avec doublons
    Par Attilaa dans le forum Excel
    Réponses: 6
    Dernier message: 23/07/2014, 10h12
  2. [XL-2013] Equivalent rechercheV et doublons [VBA]
    Par simon12 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 01/07/2014, 16h14
  3. [Toutes versions] Recherchev et gestion de doublons
    Par Basicnav dans le forum Excel
    Réponses: 5
    Dernier message: 26/03/2013, 08h22
  4. [XL-2010] RechercheV avec doublons
    Par moi244 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 19/12/2012, 18h13
  5. verification de doublons dans un tableau
    Par bohemianvirtual dans le forum C
    Réponses: 11
    Dernier message: 25/05/2002, 12h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo