[VBA] INSERT INTO statement
Fermé
fredo91170
Messages postés
7
Date d'inscription
vendredi 6 octobre 2006
Statut
Membre
Dernière intervention
31 juillet 2007
-
12 oct. 2006 à 17:21
amigo - 21 avril 2008 à 00:07
amigo - 21 avril 2008 à 00:07
A voir également:
- [VBA] INSERT INTO statement
- Touche insert - Guide
- Disk boot failure insert system disk and press enter - Guide
- Insert boot media in selected boot device and press a key ✓ - Forum Windows 10
- Find vba - Astuces et Solutions
- Touche inser sur elite book hp - Forum PC portable
7 réponses
bonsoir,
D'après ce que j'ai pu comprendre, PV_PLS.ASOFDATE est une date
or tu ecrit:
dat = Date
a = Year(dat)
a1 = Month(dat)
dd = CStr(a & 0 & a1 & dy)
si dat=#20/04/2008#
a=2008
a1=4
il manque dy (dy=Day(date) )
alors
dd="20080420" (chaine de caractère et non une date)
donc assure toi que dd est bien une date avec le format adéquat, ce qui expliquerait " incompatibilité de type"
Est ce que ce ne serait pas plutot #20/04/2008# ou encore #4/20/2008# (format anglais)
D'autre part, en VB, la fonction Format est tres pratique pour formater les dates:
dd=Format(Date,"yyyy/mm/dd") donnerait dd="2008/04/20"
dd=Format(Date,"dd/mm/yyyy") donnerait dd="20/04/2008"
et d'autres format sont encore possibles.
Salut.
D'après ce que j'ai pu comprendre, PV_PLS.ASOFDATE est une date
or tu ecrit:
dat = Date
a = Year(dat)
a1 = Month(dat)
dd = CStr(a & 0 & a1 & dy)
si dat=#20/04/2008#
a=2008
a1=4
il manque dy (dy=Day(date) )
alors
dd="20080420" (chaine de caractère et non une date)
donc assure toi que dd est bien une date avec le format adéquat, ce qui expliquerait " incompatibilité de type"
Est ce que ce ne serait pas plutot #20/04/2008# ou encore #4/20/2008# (format anglais)
D'autre part, en VB, la fonction Format est tres pratique pour formater les dates:
dd=Format(Date,"yyyy/mm/dd") donnerait dd="2008/04/20"
dd=Format(Date,"dd/mm/yyyy") donnerait dd="20/04/2008"
et d'autres format sont encore possibles.
Salut.
blux
Messages postés
26545
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
22 décembre 2024
3 318
13 oct. 2006 à 09:00
13 oct. 2006 à 09:00
Salut,
oui, CampagneOracle est entre guillemets, et comme c'est le séparateur de ta chaine, ça ne va pas aller...
Il faut construire ta requête en passant par une variable string puis l'envoyer au db.execute...
oui, CampagneOracle est entre guillemets, et comme c'est le séparateur de ta chaine, ça ne va pas aller...
Il faut construire ta requête en passant par une variable string puis l'envoyer au db.execute...
j'ai toujours un message d 'erreur
dat = Date
a = Year(dat)
a1 = Month(dat)
dd = CStr(a & 0 & a1 & dy)
ChSQL = "INSERT INTO PV(TRADEID,ASOFDATE,CURVEID,LOCATION,[SYSTEM_LOCATION],APPLICATION,CCY,ASSETID,VALUE,ACCRUAL,CASHFLOW)" & _
" SELECT TRADEID,ASOFDATE,CURVEID,LOCATION,SYSTEM_LOCATION,APPLICATION,CCY,ASSETID,VALUE,ACCRUAL,CASHFLOW " _
& " FROM PV_PLS " & _
" WHERE PV_PLS.ASOFDATE = dd;"
Set qdf = oDb.CreateQueryDef("fill", ChSQL)
'erreur de syntaxe dans insert into
'j'ai verifié les noms de champs,la ponctuation mais rien à faire
'pouvez vous me dire si il y aurait une raison apparente que je ne connaitrai pas
End Sub
dat = Date
a = Year(dat)
a1 = Month(dat)
dd = CStr(a & 0 & a1 & dy)
ChSQL = "INSERT INTO PV(TRADEID,ASOFDATE,CURVEID,LOCATION,[SYSTEM_LOCATION],APPLICATION,CCY,ASSETID,VALUE,ACCRUAL,CASHFLOW)" & _
" SELECT TRADEID,ASOFDATE,CURVEID,LOCATION,SYSTEM_LOCATION,APPLICATION,CCY,ASSETID,VALUE,ACCRUAL,CASHFLOW " _
& " FROM PV_PLS " & _
" WHERE PV_PLS.ASOFDATE = dd;"
Set qdf = oDb.CreateQueryDef("fill", ChSQL)
'erreur de syntaxe dans insert into
'j'ai verifié les noms de champs,la ponctuation mais rien à faire
'pouvez vous me dire si il y aurait une raison apparente que je ne connaitrai pas
End Sub
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
16 avril 2008 à 17:31
16 avril 2008 à 17:31
salut,
1 - ni bonjour, ni autre explication qu'un bout de code ...
2 - ajouter un post sur un sujet vieux de presque 2 ans ...
3 - ça donne pas envie de répondre ...
1 - ni bonjour, ni autre explication qu'un bout de code ...
2 - ajouter un post sur un sujet vieux de presque 2 ans ...
3 - ça donne pas envie de répondre ...
blux
Messages postés
26545
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
22 décembre 2024
3 318
16 avril 2008 à 22:22
16 avril 2008 à 22:22
Et pourtant, l'erreur est évidente... il suffit d'afficher ChSQL pour s'en rendre compte...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dslé de pas aavoir mis plus que ça comme message
mais gt en plein projet so pas trop le temps
je ne vois toujours pas ou se situe l erreur
je comprends vite mais faut m expliquer longtemps
pouvez vous m'eclairer svp
mais gt en plein projet so pas trop le temps
je ne vois toujours pas ou se situe l erreur
je comprends vite mais faut m expliquer longtemps
pouvez vous m'eclairer svp
bonjour,
je pense que l'erreur est là
" WHERE PV_PLS.ASOFDATE = dd;"
ce serait plutot
" WHERE PV_PLS.ASOFDATE =" & dd & ";"
A+.
je pense que l'erreur est là
" WHERE PV_PLS.ASOFDATE = dd;"
ce serait plutot
" WHERE PV_PLS.ASOFDATE =" & dd & ";"
A+.
salut
effectivement, il y avait une erreur au niveau :WHERE PV_PLS.ASOFDATE = dd;"
j'ai donc remplacé par
" WHERE PV_PLS.ASOFDATE =" & dd & ";" mais j'ai néanmoins une erreur " incompatibilité de type"
je ne vois pas ou peut se situer l'erreur . j'ai pensé que ça pouvait venir de
,[SYSTEM_LOCATION],APPLICATION,CCY,ASSETID,VALUE,ACCRUAL,CASHFLOW)" & _
à cause de VALUE qui pourrait etre un mot réservé, j'ai ainsi changé le nom de mon champ mais apparemment l'erreur se situe ailleurs.
pouvez vs m'aider
merci
effectivement, il y avait une erreur au niveau :WHERE PV_PLS.ASOFDATE = dd;"
j'ai donc remplacé par
" WHERE PV_PLS.ASOFDATE =" & dd & ";" mais j'ai néanmoins une erreur " incompatibilité de type"
je ne vois pas ou peut se situer l'erreur . j'ai pensé que ça pouvait venir de
,[SYSTEM_LOCATION],APPLICATION,CCY,ASSETID,VALUE,ACCRUAL,CASHFLOW)" & _
à cause de VALUE qui pourrait etre un mot réservé, j'ai ainsi changé le nom de mon champ mais apparemment l'erreur se situe ailleurs.
pouvez vs m'aider
merci