marwakarim
Messages postés40Date d'inscriptionsamedi 27 mars 2010StatutMembreDernière intervention11 juin 2010
-
30 mai 2010 à 17:59
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 2021
-
31 mai 2010 à 06:23
salut je suis entrain de réaliser mon projet j'ai fait une bouton d'ajout qui me permettre de remplir une base accés 2007 mais il m'affiche ce type d'erreur svp qui peut m'aider car j'ai besoin d'aide le plus vite possible pour terminer mon projet merci d'avance et voila le code
code de boutton
Private Sub Command3_Click()
If Txtlicence(0).Text "" And Txtplainte(1).Text "" And Txtbande(3).Text = "" And Txtbrouillé(3).Text = "" And Txtfreqbrouillage(2).Text = "" And Txtsitebrouillage(4).Text = "" _
And Txtrappel(10).Text = "" Then
MsgBox "Veuillez Remplir Les Cases", vbInformation, "Information"
Else
Dim licence As String: Dim dat As Date: Dim bande As Integer: Dim brouillé As String: Dim freqbrouillage As Integer: Dim sitebrouillage As String: Dim rappel As Date
Command3.Enabled = False
MsgBox "Vos données sont enregistrer", vbOKOnly
End If
End Sub
et voile le module
Dim Dossier As New ADODB.Connection
Option Explicit
Public Sub Etablire_Connection()
Dossier.Provider = "Microsoft.Jet.OLEDB.4.0"
Dossier.ConnectionString = "C:\Documents and Settings\Administrateur\Bureau\gestion_brouillage\anf.mdb"
Dossier.Open
End Sub
Public Sub Fermer_Connection()
Dossier.Close
End Sub
Public Sub ajoutDossier(ByVal licence As Integer, ByVal dat As Date, ByVal bande As Integer, ByVal brouillé As String, ByVal freqbrouillage As Integer, _
ByVal sitebrouillage As String, ByVal rappel As String)
'Procédure permettant d'inserrer dans les tables tous les renseignements
Call Etablire_Connection
Dim Reqsql As New ADODB.Command
Dim Pilote As New ADODB.Recordset
Reqsql.ActiveConnection = Dossier
Reqsql.CommandText = "Insert into Dossier Values(" & licence & ",'" & dat & "','" & bande & "','" & brouillé & "','" & freqbrouillage & "','" & sitebrouillage & "','" & rappel & "', & " ',#" & CStr(dexp) & "#)"
Set Dossier = Reqsql.Execute
Call Fermer_Connection
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 30 mai 2010 à 18:11
;ets des OR plutot que des AND la :
If Txtlicence(0).Text "" And Txtplainte(1).Text "" And Txtbande(3).Text = "" And Txtbrouillé(3).Text = "" And Txtfreqbrouillage(2).Text = "" And Txtsitebrouillage(4).Text = "" _
And Txtrappel(10).Text = "" Then
pour ton erreurm c'est "juste" du au fait qu'il manque le nom des champs dans ta requete INSERT INTO
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 31 mai 2010 à 00:40
Salut
Embrouillé tout ça.
Dans ta requète, or mis qu'il manque la liste des champs, il y a aussi un truc bizarre à la fin :
..."','" & rappel & "', & " ',#" & CStr(dexp) & "#)"
-1- D'où sort ta variable dexp ?
-2- En imaginant la tête de la String ainsi fabriquée (avec rappel toto et dexp kiki) :
...','toto', & ',#kiki#)
.............^^^^
Ici, ca ne passe pas
D'autre part, un Insert Into peut se faire beaucoup plus simplement sans objet Command :
maConnexion.Execute "ma requete SQL"
c'est tout
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
marwakarim
Messages postés40Date d'inscriptionsamedi 27 mars 2010StatutMembreDernière intervention11 juin 2010 31 mai 2010 à 01:12
bonsoir alors quesque je peut faire j'ai essayer beaucoup des codes mais sa fonctionne pas je veux juste remplir une table dossier accès 2007 a partitr vb a travers des text box
et j'essayer cette insttruction et sa foctionne pas
* "maConnexion.Execute "ma requete SQL"
merci d'avance et si tu peut m'aider a trouver la solution
marwakarim
Messages postés40Date d'inscriptionsamedi 27 mars 2010StatutMembreDernière intervention11 juin 2010 31 mai 2010 à 01:18
bonsoir j'ai deja remplacer le and par or mais il faut que je déclare
licence= [N° de licence]
dat=[Date de plainte]
.........
mais c ou exact dans le module
Dim Dossier As New ADODB.Connection
Option Explicit
Public Sub Etablire_Connection()
Dossier.Provider = "Microsoft.Jet.OLEDB.4.0"
Dossier.ConnectionString = "C:\Documents and Settings\Administrateur\Bureau\gestion_brouillage\anf.mdb"
Dossier.Open
End Sub
Public Sub Fermer_Connection()
Dossier.Close
End Sub
Public Sub ajoutDossier(ByVal licence As Integer, ByVal dat As Date, ByVal bande As Integer, ByVal brouillé As String, ByVal freqbrouillage As Integer, _
ByVal sitebrouillage As String, ByVal rappel As String)
'Procédure permettant d'inserrer dans les tables tous les renseignements
Call Etablire_Connection
Dim Reqsql As New ADODB.Command
Dim Pilote As New ADODB.Recordset
Reqsql.ActiveConnection = Dossier
Reqsql.CommandText = "Insert into Dossier Values(" & [N° de licence] & ",'" & [date de plainte] & "','" & bande & "','" & brouillé & "','" & [frequence de brouillage] & "','" & [site_brouillage] & "','" & [Date de rappel] & "', & " ',#" & CStr(dexp) & "#)"
Set Dossier = Reqsql.Execute
Call Fermer_Connection
end sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 31 mai 2010 à 06:23
mets des OR plutot que des AND la :
If Txtlicence(0).Text "" And Txtplainte(1).Text "" And Txtbande(3).Text = "" And Txtbrouillé(3).Text = "" And Txtfreqbrouillage(2).Text = "" And Txtsitebrouillage(4).Text = "" _
And Txtrappel(10).Text = "" Then
tu reponds
bonsoir j'ai deja remplacer le and par or mais il faut que je déclare
licence= [N° de licence]
dat=[Date de plainte]
ce que je te disais, c'est que ton test qui sert a afficher un MsgBox est FAUX !
il ne s'affichera que si tu oublies de remplir TOUS LES TEXTBOX...
Ce qui n'est, j'imagine pas le but recherche...
concernant ta requete SQL, elle est toujours fausse...
il te manque encore la liste des champs...
observe un modele simple :
INSERT INTO TableClients ([Nom], [Prenom]) VALUES('DUPONT', 'Jean')
On indique la liste des champs, suivie de la liste des valeurs a donner a ces champs, en respectant l'ordre...