Pb requête sous access
vuko
-
caroline2911 -
caroline2911 -
Pardon ne tenait pas conte du message que j'ai précédement envoyer..je l'ai envoyé alor que je navai pa fini de tout expliker
donc j'ai un pb dans ma requete :
jai mis un bouton a coché é il dot meffacer des trucs
voici le code :
Private Sub Cocher30_Click()
Dim mysql As String
If (Me.Cocher30 = -1) Then
mysql = "delete * From T_Format Where CodeFormat = '" & [CodeFormat] & "'"
DoCmd.RunSQL mysql
End If
End Sub
aprés sa me marque erreur d'exécution 3464
type de donnée incompatible dans l'expression du critére
quelqu'un eut il mexpliké a koi sa signifie é comment le corriger ???
merci d'avance !!!!
donc j'ai un pb dans ma requete :
jai mis un bouton a coché é il dot meffacer des trucs
voici le code :
Private Sub Cocher30_Click()
Dim mysql As String
If (Me.Cocher30 = -1) Then
mysql = "delete * From T_Format Where CodeFormat = '" & [CodeFormat] & "'"
DoCmd.RunSQL mysql
End If
End Sub
aprés sa me marque erreur d'exécution 3464
type de donnée incompatible dans l'expression du critére
quelqu'un eut il mexpliké a koi sa signifie é comment le corriger ???
merci d'avance !!!!
A voir également:
- Pb requête sous access
- Access appdata - Guide
- Acer quick access - Forum logiciel systeme
- Désinstaller ACER QUICK ACCESS - Forum Logiciels
- Requête sql pix - Forum Python
- Exemple base de données access à télécharger gratuit ✓ - Forum Logiciels
5 réponses
Bonjour,
codeformat est le nom d'un champ, mais il ne s'utilise pas tout seul...
Si tu veux en récupérer le contenu et le passer en paramètre de ta requête, il faut mettre :
codeformat est le nom d'un champ, mais il ne s'utilise pas tout seul...
Si tu veux en récupérer le contenu et le passer en paramètre de ta requête, il faut mettre :
mysql = "delete * From T_Format Where CodeFormat = '" & [CodeFormat].Value & "'"
Bin j'ai essayé ta solution mais sa me marque toujours la même chose :
erreur d'exécution 3464
type de donnée incompatible dans l'expression du critére
erreur d'exécution 3464
type de donnée incompatible dans l'expression du critére
Quelle est le type de CodeFormat dans ta table ? numérique ?
Dans ce cas, il ne faut pas mettre de ', ils sont réservés aux chaines de caractères...
Dans ce cas, il ne faut pas mettre de ', ils sont réservés aux chaines de caractères...
mysql = "delete * From T_Format Where CodeFormat = " & [CodeFormat].Value & ";"
DoCmd.RunSQL strSql & strSql1 & strSql2 & strSql3
DoCmd.DeleteObject acTable, "essai1"
le programme continu ensuite mais l'erreur apparait sur cette dernière ligne pardon sur l'avant-dernière ligne
Si quelqu'un peut m'aider, ce serait vraiment cool, je bloque !
Merci beaucoup!
DoCmd.DeleteObject acTable, "essai1"
le programme continu ensuite mais l'erreur apparait sur cette dernière ligne pardon sur l'avant-dernière ligne
Si quelqu'un peut m'aider, ce serait vraiment cool, je bloque !
Merci beaucoup!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Je gère une base de données sous access dont le principe est de récupérer des chiffres saisis dans un fichier excel et de calculer des moyennes à partir de critères temporels définis.
Tous marchait bien jusqu'à la dernière importation, et aujourd'hui, j'ai ce message d'erreur : erreur d'exécution 3464
type de donnée incompatible dans l'expression du critére.
Il me semble n'avoir fait aucune manipulation hasardeuse sur la base depuis la dernière fois alors je pige pas trop ce qu'il se passe.
Voilà le code :
Public Function Traitement_principal()
Dim BD As Database
Dim strTMP, strSql, strSql1, strSql2, strSql3, strSql4, strSql5, strMsg, dtmcpt As String
Dim rstTMP, rstTMP1 As Recordset
Dim intValid As Integer
Set BD = CurrentDb()
DoCmd.SetWarnings False
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'IMPORTATION DU FICHIER EXCEL
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'importation de la feuille origine du fichier a_mettre_en_base
DoCmd.TransferSpreadsheet acImport, 0, "origine", "H:\Bases prix\Base_Rungis\a_mettre_en_base_Rungis.xls", True, ""
'mise à jour du libellé region RUNGIS
DoCmd.RunSQL "UPDATE origine SET origine.region = 'RUNGIS FLG'"
'mise en forme du fichier origine si il n'est pas vide
strSql = "SELECT origine.region, origine.date, origine.ref as reference, origine.min as prix_mini, origine.max as prix_maxi, origine.moy as prix_moyen"
strSql1 = " INTO essai1"
strSql2 = " FROM origine"
DoCmd.RunSQL strSql & strSql1 & strSql2
DoCmd.DeleteObject acTable, "origine"
'verification si le fichier importé ne contient pas deux jours identiques
strSql = "SELECT essai1.region, essai1.date, essai1.reference, Avg(essai1.prix_mini) AS prix_mini, Avg(essai1.prix_maxi) AS prix_maxi, Avg(essai1.prix_moyen) AS prix_moyen"
strSql1 = " INTO essai"
strSql2 = " FROM essai1"
strSql3 = " GROUP BY essai1.region, essai1.date, essai1.reference"
DoCmd.RunSQL strSql & strSql1 & strSql2 & strSql3
DoCmd.DeleteObject acTable, "essai1"
le programme continu ensuite mais l'erreur apparait sur la ligne soulignée
Si quelqu'un peut m'aider, ce serait vraiment cool, je bloque !
Merci beaucoup!
Je gère une base de données sous access dont le principe est de récupérer des chiffres saisis dans un fichier excel et de calculer des moyennes à partir de critères temporels définis.
Tous marchait bien jusqu'à la dernière importation, et aujourd'hui, j'ai ce message d'erreur : erreur d'exécution 3464
type de donnée incompatible dans l'expression du critére.
Il me semble n'avoir fait aucune manipulation hasardeuse sur la base depuis la dernière fois alors je pige pas trop ce qu'il se passe.
Voilà le code :
Public Function Traitement_principal()
Dim BD As Database
Dim strTMP, strSql, strSql1, strSql2, strSql3, strSql4, strSql5, strMsg, dtmcpt As String
Dim rstTMP, rstTMP1 As Recordset
Dim intValid As Integer
Set BD = CurrentDb()
DoCmd.SetWarnings False
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'IMPORTATION DU FICHIER EXCEL
'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
'importation de la feuille origine du fichier a_mettre_en_base
DoCmd.TransferSpreadsheet acImport, 0, "origine", "H:\Bases prix\Base_Rungis\a_mettre_en_base_Rungis.xls", True, ""
'mise à jour du libellé region RUNGIS
DoCmd.RunSQL "UPDATE origine SET origine.region = 'RUNGIS FLG'"
'mise en forme du fichier origine si il n'est pas vide
strSql = "SELECT origine.region, origine.date, origine.ref as reference, origine.min as prix_mini, origine.max as prix_maxi, origine.moy as prix_moyen"
strSql1 = " INTO essai1"
strSql2 = " FROM origine"
DoCmd.RunSQL strSql & strSql1 & strSql2
DoCmd.DeleteObject acTable, "origine"
'verification si le fichier importé ne contient pas deux jours identiques
strSql = "SELECT essai1.region, essai1.date, essai1.reference, Avg(essai1.prix_mini) AS prix_mini, Avg(essai1.prix_maxi) AS prix_maxi, Avg(essai1.prix_moyen) AS prix_moyen"
strSql1 = " INTO essai"
strSql2 = " FROM essai1"
strSql3 = " GROUP BY essai1.region, essai1.date, essai1.reference"
DoCmd.RunSQL strSql & strSql1 & strSql2 & strSql3
DoCmd.DeleteObject acTable, "essai1"
le programme continu ensuite mais l'erreur apparait sur la ligne soulignée
Si quelqu'un peut m'aider, ce serait vraiment cool, je bloque !
Merci beaucoup!