Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
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 16/05/2011, 14h22   #1
Nouveau Membre du Club
 
Inscription : mai 2009
Messages : 124
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 124
Points : 26
Points : 26
Par défaut ecraser les données a l'insertion dans une table

bonjour ,
j'aimerais savoir s'il est possible grâce a une option ou quoique se soit d'autre de faire en sorte que lorsque j'insert une ligne dans une table en code vba celles-ci ecrase le doublon potentiel.
rominous41 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/05/2011, 15h08   #2
Expert Confirmé
 
Avatar de Richard_35
 
Homme
Inscription : juillet 2007
Messages : 2 176
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juillet 2007
Messages : 2 176
Points : 2 805
Points : 2 805
Bonjour Rominous41,

Je ne connais pas VBA mais, juste avant ton code d'insertion d'enregistrement, tu peux lancer un SQL
Code SQL :
DELETE * FROM TaTable WHERE TaTable.LaClé=TaTable.LeCléQueTuVeuxInsérerJusteAprès
Tu devrais obtenir ce que tu souhaites.
__________________
Dis-nous et à bientôt,
Richard.
----------------------------------------------------------------------------------------------
En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
Richard_35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/05/2011, 15h11   #3
Candidat au titre de Membre du Club
 
Inscription : janvier 2006
Messages : 39
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 39
Points : 13
Points : 13
Bonjour, je ne sais pas si cela répond à ton besoin mais idéalement avant l'insertion tu vérifies si la valeur n'existe pas déjà. Si oui tu ne fais rien, sinon tu l'ajoutes.
Code :
1
2
3
4
INSERT INTO ... SELECT '[value1]', '[value2]' FROM ...
WHERE NOT EXISTS
SELECT [column1],[column2] FROM ...
WHERE [column1]='[value1]' AND [column2]='[value2]')
teuzadur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/05/2011, 15h24   #4
Nouveau Membre du Club
 
Inscription : mai 2009
Messages : 124
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 124
Points : 26
Points : 26
Excellente suggestion le "where not exist" je la garde sous le pied seulement j'importe directement mes données dans mes tables Access a partir de fichier excel donc je n’exécute pas de requête a proprement parler

voici le code que j'utilise pour insérer mes données
Code :
1
2
 
 DoCmd.TransferSpreadsheet acImport, 8, "JOURNEE", OuvrirUnFichier(Application.hWndAccessApp, "Parcourir", 1, "Fichier Excel", "*.xlsx"), True
Code :
1
2
 
OuvrirUnFichier(Application.hWndAccessApp, "Parcourir", 1, "Fichier Excel", "*.xlsx")
est une fonction qui ouvre une boite de dialogue est qui retourne le fichier a inserer dans la table JOURNEE
rominous41 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/05/2011, 15h36   #5
Expert Confirmé
 
Avatar de Richard_35
 
Homme
Inscription : juillet 2007
Messages : 2 176
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Ille et Vilaine (Bretagne)

Informations forums :
Inscription : juillet 2007
Messages : 2 176
Points : 2 805
Points : 2 805
Eh bien, tu peux :
  • importer ton fichier Excel dans une table JOURNEE_Temp identique à (JOURNEE) ;
  • supprimer les enregistrements de JOURNEE présents dans JOURNEE_Temp par une requête DELETE sur JOURNEE liée à JOURNEE_Temp ;
  • exécuter ton code.
__________________
Dis-nous et à bientôt,
Richard.
----------------------------------------------------------------------------------------------
En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !
Richard_35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/05/2011, 15h38   #6
Nouveau Membre du Club
 
Inscription : mai 2009
Messages : 124
Détails du profil
Informations forums :
Inscription : mai 2009
Messages : 124
Points : 26
Points : 26
ah oui en effet je peux faire ça
merci beaucoup
rominous41 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h05.


 
 
 
 
Partenaires

Hébergement Web