Ajout de table

Le
Docteur Jekyll
Bonjour à tous.

Je vais essayer d'être précis

Deux tables..A et B étant liées la A par la clée primaire sur la B par
unerique entier avec formulaire et sous formulaire. Tout est ok.

On me donne Une table C qui est conçue en une seule table.

Je peux bien ajouter une partie de cette table dans A mais comment ajouter
dans B avec le même numéro? Car cette nouvelle table ajouter va changer de
N° de clé primaire.

Merci par avance de vos idées
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
Thierry (ze Titi)
Le #6323111
Bonjour Docteur Jekyll

Il te faudra utiliser une petite procédure VBA.

Dim rs as DAO.Recordset, rsTableA as DAO.Recordset, rsTableB as DAO.Recordset, variableId As Variant
set rs=CurrentDb.OpenRecordset("TableC",dbOpenDynaset)
set rsTableA=CurrentDb.OpenRecordset("TableA", dbOpenDynaset)
Set rsTableB=CurrentDb.OpenRecordset("TableB", dbOpenDynaset)
rs.MoveLast
rs.MoveFirst
While Not rs.EOF
rsTableA.AddNew
rsTableB.AddNew
rsTableA!champ1=rs!champ1
rsTableA!champ2=rs!champ2
variableId=rsTableA!champIdentifiant
rsTableA.Update
rsTableB!champLiaison=variableId
rsTableB!champ1=rs!champ3
...
rsTableB.Update
rs.MoveNext
Wend
Set rs=Nothing
Set rsTableA=Nothing
Set rsTableB=Nothing

A tester...

Dans ton message
Bonjour à tous.

Je vais essayer d'être précis......

Deux tables..A et B étant liées la A par la clée primaire sur la B par
unerique entier avec formulaire et sous formulaire. Tout est ok.

On me donne Une table C qui est conçue en une seule table.

Je peux bien ajouter une partie de cette table dans A mais comment ajouter
dans B avec le même numéro? Car cette nouvelle table ajouter va changer de N°
de clé primaire.

Merci par avance de vos idées


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

Rv
Le #6323091
Salut,

Essayons de préciser. Est-ce que la situation peut se résumer à ceci:
Etat initial : Table A(clé primaire table a, champs1), Table B(clé primaire
table b, champs2, clé table a), Table C(clé primaire table c, champs1,
champs2)
Objectif : Copier tous les enregistrements de la table C dans la structure
composée des tables A, B.

Si c'est le cas on peut procéder en 2 requêtes ajout successives:
- Ajout des enregistrements distincts, depuis C dans A: champs 1 et la clé
primaire de la table c (ceci dans une nouvelle colonne créée temporairement
pour cette opération)
- Ajout des enregistrements, depuis C lié à A, dans B: champs 1 et la clé
primaire de la table A.

On peut aussi procéder en VBA par un parcours de la table C et un ajout
successif dans les tables A et B.


Je ne précise pas car je ne suis pas sûr de bien comprendre le problème...

A+

Rv
"Docteur Jekyll" news:4701e75a$0$9024$
Bonjour à tous.

Je vais essayer d'être précis......

Deux tables..A et B étant liées la A par la clée primaire sur la B par
unerique entier avec formulaire et sous formulaire. Tout est ok.

On me donne Une table C qui est conçue en une seule table.

Je peux bien ajouter une partie de cette table dans A mais comment ajouter
dans B avec le même numéro? Car cette nouvelle table ajouter va changer de
N° de clé primaire.

Merci par avance de vos idées



Fabien
Le #6323081
Bonjour à tous.

Je vais essayer d'être précis......

Deux tables..A et B étant liées la A par la clée primaire sur la B par
unerique entier avec formulaire et sous formulaire. Tout est ok.

On me donne Une table C qui est conçue en une seule table.

Je peux bien ajouter une partie de cette table dans A mais comment ajouter
dans B avec le même numéro? Car cette nouvelle table ajouter va changer de
N° de clé primaire.

Merci par avance de vos idées


Bonjour,

Je suppose que tes éléments de la table C sont indexés.
Donc il suffit d'une 1er requete d'ajout des éléments de C dans A
Puis une requéte qui remonte le N° de clef primaire de chaque éléments
ajoutés. ET avec cette requete tu ajoutes dans B les infos de C + le N°
de clef primaire déterminé par la requete Précédente.
Suis-je clair ???
Soit une table A
N° Index champA1 champA2 champA3
Une table B
N°indexIdemA ChampB1 champB2 champB3
Une table C
N°IndexC ChampC1 ChampC2 ChampC3 ChampC4,ChampC5,ChampC6

Requete1
Insert into TableA (ChampA1,ChampA2,ChampA3) select
ChampC1,ChampC2,ChampC3 from TABLEC

Requete2
Select TableA.N°INDEX,ChampC4,ChampC5,ChampC6 from TABLEA left joint
TableC ON (ChampC1=ChampA1)

Requete3
Insert Into TableB (N°INDEXIDEMA,ChampB1,champB2,champB3) select
N°INDEX,ChampC4,ChampC5,ChampC6 ) from Requete2

Voilà Avec quelques choses dans ce goût là .....

Thierry (ze Titi)
Le #6323071
Bonjour Fabien !

Ca fait quelques jours que nous n'avions pas le plaisir de te lire...
Tu nous snobes ? ;-)


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info
Fabien
Le #6323051
Bonjour Fabien !

Ca fait quelques jours que nous n'avions pas le plaisir de te lire... Tu
nous snobes ? ;-)




Ben non mais quant lucky luke Raymon est en ville je me fais trés petit ;-)

Docteur Jekyll
Le #6323041
Je vais essayer cet après midi..Merci à tous
"Fabien" 4702046b$0$5107$
Bonjour Fabien !

Ca fait quelques jours que nous n'avions pas le plaisir de te lire... Tu
nous snobes ? ;-)




Ben non mais quant lucky luke Raymon est en ville je me fais trés petit
;-)



Publicité
Poster une réponse
Anonyme