Probléme sur access
Miala
-
Miala -
Miala -
Bonjour à tous.
J'ai un petit soucis pour un code sur Access/VBA. En faite j'ai une base de données qui regroupes des valeur pour une entreprise qui fabrique des peintures.
Tout d'abord, j'ai regardé plusieurs topics, mais rien ne se passe dans ma base.
J'aimerais faire transferer certaines colonnes d'une table vers d'autre colonnes d'une autre table.
Voici le code que j'ai effectuer, merci de me dire ce qui ne va pas dedans, parce que là je ne sais plus quoi faire:
Dim base As Database
Dim T As Recordset
Dim FLD001 As Recordset
Set base = CurrentDb()
Set T = base.OpenRecordset("transfert", DB_OPEN_DYNASET)
Set FLD001 = base.OpenRecordset("FLD_001", DB_OPEN_DYNASET)
Dim rep As String
rep = "insert into T select champ3, champ52, champ53, champ54, champ55, champ56 from FLD001 where champ3 <> NULL"
J'espére que vous pourez m'aider.
Bonne journée et merci d'avance.
J'ai un petit soucis pour un code sur Access/VBA. En faite j'ai une base de données qui regroupes des valeur pour une entreprise qui fabrique des peintures.
Tout d'abord, j'ai regardé plusieurs topics, mais rien ne se passe dans ma base.
J'aimerais faire transferer certaines colonnes d'une table vers d'autre colonnes d'une autre table.
Voici le code que j'ai effectuer, merci de me dire ce qui ne va pas dedans, parce que là je ne sais plus quoi faire:
Dim base As Database
Dim T As Recordset
Dim FLD001 As Recordset
Set base = CurrentDb()
Set T = base.OpenRecordset("transfert", DB_OPEN_DYNASET)
Set FLD001 = base.OpenRecordset("FLD_001", DB_OPEN_DYNASET)
Dim rep As String
rep = "insert into T select champ3, champ52, champ53, champ54, champ55, champ56 from FLD001 where champ3 <> NULL"
J'espére que vous pourez m'aider.
Bonne journée et merci d'avance.
11 réponses
Salut,
le mot-clé NULL n'existe pas sous ACCESS.
Il faut tester si la valeur est nulle :
A+ Blux
le mot-clé NULL n'existe pas sous ACCESS.
Il faut tester si la valeur est nulle :
WHERE NOT IsNull(champ3)--
A+ Blux
"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
Bonjour
Pour moi la syntaxe de la requete se serait plutot
Sachant qu epour l'exécuter il faut un DoCmd.RunSQL rep
En espérant avoir compris le problème ;-)
Pour moi la syntaxe de la requete se serait plutot
rep = "SELECT champ3, champ52, champ53, champ54, champ55, champ56 INTO T FROM FLD001 WHERE champ3 IS NOT NULL;"
Sachant qu epour l'exécuter il faut un DoCmd.RunSQL rep
En espérant avoir compris le problème ;-)
SELECT INTO crée la table, INSERT INTO insère dans une table existante...
Pis je viens de regarder, NULL existe bien sous ACCESS, mais il faut faire attention, car lorsque l'on teste une condition avec null, la condition renvoie toujours false (dixit l'aide ACCESS)...
Pis je viens de regarder, NULL existe bien sous ACCESS, mais il faut faire attention, car lorsque l'on teste une condition avec null, la condition renvoie toujours false (dixit l'aide ACCESS)...
Pour citer l'aide d'access
Important Utilisez la fonction IsNull pour déterminer si une expression contient une valeur de type Null. Certaines expressions dont vous pourriez penser qu'elles sont vraies (True) dans certaines circonstances, par exemple If Var = Null et If Var <> Null, ont pourtant toujours la valeur False. En effet, toute expression contenant une valeur de type Null est elle-même de type Null et a par conséquent la valeur False
Important Utilisez la fonction IsNull pour déterminer si une expression contient une valeur de type Null. Certaines expressions dont vous pourriez penser qu'elles sont vraies (True) dans certaines circonstances, par exemple If Var = Null et If Var <> Null, ont pourtant toujours la valeur False. En effet, toute expression contenant une valeur de type Null est elle-même de type Null et a par conséquent la valeur False
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci pour vos réponses.
Mais je suis toujours bloqué, je n'arrive pas à faire trnsférer des données d'une table vers une autre, le transfert ne s'éffectue pas.
Si vous avez un autre code que celui que je vous ais communiqué ci-dessus ça m'aiderais beaucoup.
Merci et bonne journée à tous.
Mais je suis toujours bloqué, je n'arrive pas à faire trnsférer des données d'une table vers une autre, le transfert ne s'éffectue pas.
Si vous avez un autre code que celui que je vous ais communiqué ci-dessus ça m'aiderais beaucoup.
Merci et bonne journée à tous.
Bonjour,
J'ai essayer de faire une macro. J'arrive a transferer une colonne, mais pas les autres.
La requête que j'ai fait pour transferer une colonne est celui-ci:
Insert into transfert (Nom) select champ3 from FLD_001 where champ3 <> ""
Mais pour transferer les 5 autres je suis bloquée, j'ai essayé de plusieurs façon possible mais je ne trouve. Si quelqu'un sais comment faire, je veut bien de l'aide.
Merci d'avance pour votre aide et bonne journée à tous.
J'ai essayer de faire une macro. J'arrive a transferer une colonne, mais pas les autres.
La requête que j'ai fait pour transferer une colonne est celui-ci:
Insert into transfert (Nom) select champ3 from FLD_001 where champ3 <> ""
Mais pour transferer les 5 autres je suis bloquée, j'ai essayé de plusieurs façon possible mais je ne trouve. Si quelqu'un sais comment faire, je veut bien de l'aide.
Merci d'avance pour votre aide et bonne journée à tous.
insert into transfert (champ1,champ2,champ3) select champ4, champ5, champ6 from FLD_001 where champ3 <> ""???
Bonjour,
J'ai presque fini le projet pour l'entreprise, mais y a un soucis dans ma requête. Voici la requête que j'ai réalisé:
Insert into transfert (Nom,L,a,b,C,h) select champ3,champ52,champ53,champ54,champ55,champ56 from FLD_001 where champ3 <> ""
Le soucis, c'est que les champ52 à 56 sont des numérique et je n'arrive pas a les faire transférer dans mon autre table. Désolé de vous embéter encore avec ma macro mais j'ai vraiment du mal à réaliser ce projet.
Merci encore d'avance.
J'ai presque fini le projet pour l'entreprise, mais y a un soucis dans ma requête. Voici la requête que j'ai réalisé:
Insert into transfert (Nom,L,a,b,C,h) select champ3,champ52,champ53,champ54,champ55,champ56 from FLD_001 where champ3 <> ""
Le soucis, c'est que les champ52 à 56 sont des numérique et je n'arrive pas a les faire transférer dans mon autre table. Désolé de vous embéter encore avec ma macro mais j'ai vraiment du mal à réaliser ce projet.
Merci encore d'avance.
Il n'y a aucune raison qu'ACCESS ne veuille pas les transférer !
L,a,b,C,h sont bien numériques et de même type (entier, réel...) que champxx ?
L,a,b,C,h sont bien numériques et de même type (entier, réel...) que champxx ?
Merci beaucoup pour votre aide, j'ai réussi a transférer toutes les colonnes dans mon autre table.
J'espére que maintenant mon projet ne me poseras plus de soucis.
En faite j'avais juste une petite faute dans ma requête, maintenant ça fonctionne correctement.
Merci pour vos conseils ils m'ont été trés utile.
Bonne journée à tous
J'espére que maintenant mon projet ne me poseras plus de soucis.
En faite j'avais juste une petite faute dans ma requête, maintenant ça fonctionne correctement.
Merci pour vos conseils ils m'ont été trés utile.
Bonne journée à tous