rechercher puis manipuler champs identiques dans une même table

Le
Eric FROGER
Bonjour,

J'ai une table avec des enregistrements dont certains champs sont identiques
: nom société, adresse, cp, etc. Je voudrais dédoublonner ma table par code
vba pour pouvoir identifier les doublons puis récupérer certaines
informations et les agréger dans le premier enregistrement et enfin
supprimer les enregistrements "doublons" pour avoir au final un
enregistrement unique qui contient toutes les informations relatives à la
même société. J'ai essayé les boucles itératives sans succès. Comment
faut-il faire : passer par un tableau, utiliser un bookmark, ? Exemples
de code bienvenus. Merci de votre aide.
--
Eric FROGER
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jan
Le #19085051
Public Sub Uniequequery()
Dim qdf As QueryDef
Set qdf = CurrentDb.CreateQueryDef("QTest")
qdf.sql = "select distinct * into tableX from TableY"
DoCmd.OpenQuery "qtest"
End Sub

Suc6 JanvM (Pays-Bas)

"Eric FROGER" wrote:

Bonjour,

J'ai une table avec des enregistrements dont certains champs sont identiques
: nom socit, adresse, cp, etc. Je voudrais ddoublonner ma table par code
vba pour pouvoir identifier les doublons puis rcuprer certaines
informations et les agrger dans le premier enregistrement et enfin
supprimer les enregistrements "doublons" pour avoir au final un
enregistrement unique qui contient toutes les informations relatives la
mme socit. J'ai essay les boucles itratives sans succs. Comment
faut-il faire : passer par un tableau, utiliser un bookmark,... ? Exemples
de code bienvenus. Merci de votre aide.
--
Eric FROGER




Gloops
Le #19134851
Bonjour,

Le SELECT DISTINCT peut aider, mais avec quelques nuances.

Ainsi il faut être bien sûr d'avoir identifié les champs q ui doivent
être identiques (au caractère près), et faire le SELECT DI STINCT sur ces
champs uniquement.

Ensuite pour chaque enregistrement obtenu effectuer un filtre sur la
table d'origine, et partir à la pêche dans le résultat.

Finalement, si j'en dis plus ce n'est pas nécessairement plus clair :)
__________________________________
Jan a écrit, le 09/04/2009 12:37 :
Public Sub Uniequequery()
Dim qdf As QueryDef
Set qdf = CurrentDb.CreateQueryDef("QTest")
qdf.sql = "select distinct * into tableX from TableY"
DoCmd.OpenQuery "qtest"
End Sub



Publicité
Poster une réponse
Anonyme