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

VBA Access Discussion :

éliminer doublons mais avec condition


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 90
    Par défaut éliminer doublons mais avec condition
    Salut,

    comment éliminer des doublons mais avec condition:

    exemple de table:

    ID Variable
    1 10
    2 12
    3 14
    3 7
    4 1
    4 15
    5 0
    6 1

    je veux garder celui avec le plus grande valeur de variable en cas de doublons
    D'avance merci.

  2. #2
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Par défaut


    Il va falloir passer par du code en utilisant DAO

    C'est à dire générer un jeu d'enregistrements, le parcourir et supprimer les enregistrements indésirables
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 90
    Par défaut
    est ce qu'il n'y a pas une solution en SQL?

  4. #4
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 131
    Par défaut
    Une méthode SQL à la brute :
    1.Tu crée une table temporaire ayant les mêmes champs que ta table.
    2.Tu copies ton premier champ (avec "distinct") dans ta table temporaire
    3.Tu rempli le deuxième champ de ta table temporaire en croisant les deux tables (sur le premier champ) et ne prenant le "max(tondeuxièmechamp)" à chaque fois.
    Et voilà...

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2007
    Messages : 90
    Par défaut
    merci pour ta réponse WillCartely

    aurait tu un bout code avec cela , juste pour ma compréhension?

  6. #6
    Membre éprouvé
    Inscrit en
    Août 2008
    Messages
    131
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 131
    Par défaut
    Tu crée ta table temporaire, soit en faisant un simple copier coller depuis ta fenêtre access.
    Au pire tu peux utiliser la methode "CopyObject" depuis vba je crois, ou "Create Table" depuis le requêtes...
    Pour tout effacer:Pour tout copier:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Insert into tableTemp select * from TaTable
    J'ai vu (à peu près) ceci ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    DELETE *
    FROM TableTemp AS T1
    WHERE T1.Variable < ANY
       (SELECT Variable
        FROM   TableTemp as T2
        WHERE  T1.Variable <> T2.Variable
          AND  T1.id = T2.id);
    çà supprime les doublons en gardant toujours les maximums de "Variable".
    ...Mais si tu as 2 "Id" avec les mêmes "Variables" maximum, il les gardera, donc inspire-toi pour la suite encore ici

    Bon, je suis pas un pro en la matière mais j'espère que çà t'aidera...

Discussions similaires

  1. [XL-2003] Reperer des doublons mais avec condition
    Par merlinus3000 dans le forum Excel
    Réponses: 3
    Dernier message: 12/04/2012, 16h57
  2. [XL-2000] somme par compteur mais avec conditions
    Par Rrrroh dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 20/07/2010, 19h02
  3. valeur MIN mais avec condition "pair" ou "impaire"
    Par litacan dans le forum Excel
    Réponses: 2
    Dernier message: 31/10/2009, 11h09
  4. Réponses: 1
    Dernier message: 30/06/2006, 16h01
  5. Réponses: 6
    Dernier message: 15/06/2006, 15h15

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