Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Modélisation
Modélisation Le forum qui vous aide à résoudre vos questions relatives à la modélisation (tables et relations) de votre base de données sous Access. Pour les états et les formulaires, postez dans le forum IHM.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/03/2007, 13h01   #1
Membre habitué
 
Homme Thierry BATLLE
Ingénieur développement logiciels
Inscription : novembre 2005
Messages : 415
Détails du profil
Informations personnelles :
Nom : Homme Thierry BATLLE
Localisation : France, Tarn (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : novembre 2005
Messages : 415
Points : 104
Points : 104
Envoyer un message via AIM à thierrybatlle Envoyer un message via MSN à thierrybatlle
Par défaut [Conception]Duplication de données

Bonjour,

Je souhaite enregistrer des données d'un champ d'une table dans une autre table, mais avant d'insérer les données je veux faire une comparaison de la donnée à insérer avec celles déjà insérées, pour éviter les redondances.

Comment faire?

Merci.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub btn_four_Click()
    Dim tableClient As DAO.Recordset
    Dim tableRev As DAO.Recordset
 
    Set tableClient = CurrentDb.OpenRecordset("CLIENTS")
    Set tableRev = CurrentDb.OpenRecordset("T_revendeurs")
 
    While Not tableClient.EOF
        'tableRev.Edit
        While Not tableRev.EOF
            If Trim(tableClient!rev) <> Trim(tableRev!nom_rev) Then
                tableRev!nom_rev = Trim(tableClient!rev)
                tableRev.Update
            End If
        Wend
    Wend
thierrybatlle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2007, 13h10   #2
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 625
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 625
Points : 30 924
Points : 30 924
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Bonjour

Au lieu d'imbriquer 2 recordset, utilise la fonction DLookup, pour la syntaxe.

Tu test avec cette fonction s'il y'a la valeur dans ta deuxième table, tu fais un test, si la valeur est nulle, tu ajoutes.

Petite remarque ton code est pas mal, cependant tu auras une boucle infinie, regarde les méthodes du recordset sur MoveNext.

Que faisait ton code ?, Je suis sûr qu'il ne s'arrêtait jamais.

Starec
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2007, 13h53   #3
Membre habitué
 
Homme Thierry BATLLE
Ingénieur développement logiciels
Inscription : novembre 2005
Messages : 415
Détails du profil
Informations personnelles :
Nom : Homme Thierry BATLLE
Localisation : France, Tarn (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : novembre 2005
Messages : 415
Points : 104
Points : 104
Envoyer un message via AIM à thierrybatlle Envoyer un message via MSN à thierrybatlle
Bonjour,

j'ai regardé l'aide et je ne vois pas trop comment l'employer.
Sans vouloir être exigeant, comment peu se traduire mon code avec cette fonction.

Merci bien.
thierrybatlle est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h12.


 
 
 
 
Partenaires

Hébergement Web