Khenat375
Messages postés20Date d'inscriptionvendredi 23 mai 2008StatutMembreDernière intervention 3 novembre 2011
-
2 nov. 2011 à 16:16
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
14 nov. 2012 à 20:31
Bonjour,
j'ai un soucis en VB Access, voilà le code :
Option Compare Database
Public TComptes(1 To 3000, 1 To 2) As Variant
Public Sub chargement_Tableaux()
'ATTENTION : vérifier que le composant recordset est ADO 2.1 et pas DAO 3.6
'chargement de la table access Plan_Comptable dans le tableau TComptes
'***********************************************************
Dim numcompte As Integer
Dim libcompte As String 'libelle_compte
'déclaration d'un recordset sur la table Plan_Comptable
Dim rscompte As Recordset
Set rscompte = New ADODB.Recordset
rscompte.Open "select * from Plan_Comptable", CurrentProject.Connection, adOpenKeyset, adLockReadOnly
....etc...
Et l'arrêt (avec le message [Erreur de compilation: Membre de méthode ou de données introuvable]) se positionne sur le ".Open" avant la requête.
J'aimerais donc savoir quel est le problème s'il-vous-plait..
(sachant qu'au niveau des références, je suis normalement comme il faut [avec l'ADO 2.1 entre autres])
Merci d'avance à ceux qui répondront et qui m'aideront à comprendre ce qu'il se passe!
Khenat375
Messages postés20Date d'inscriptionvendredi 23 mai 2008StatutMembreDernière intervention 3 novembre 2011 3 nov. 2011 à 11:41
Merci jack!
..j'avais trouvé dans la nuit (peu avant ta réponse tiens en fait..) après de longues recherches sur le net et en effet, cela fonctionne maintenant.
Merci encore pour ta réponse mister!
Bonjour,
J'ai le même message qui s'affiche mais avec ce code :
Private Sub Commande3_Click()
Dim rs As ADODB.Recordset
SQL = "SELECT CODENAF FROM NAF WHERE" & Modifiable1 & " LIKE LIBELLE"
Set rs = New ADODB.Recordset
rs.Open SQL, ActiveConnection
rs.Close
Texte4.Value = rs.Fields(0)
End Sub
Le problème se positionne sur le private sub... Je suis donc bloquée !
Merci d'avance pour votre aide !
Option Compare Database
Private Sub Commande3_Click()
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
rs.ActiveConnection = CurrentProject.Connection
MsgBox ("SELECT CODENAF FROM NAF WHERE CODENAF= " & Modifiable1)
rs.Open "SELECT CODENAF FROM NAF WHERE CODENAF= " & Modifiable1
rs.Close
Texte4.Value = rs.Fields(0)
End Sub
J'ai exécuté ce code, mais j'ai maintenant le message : "Erreur de syntaxe (opérateur absent) dans l'expression "CODENAF=46.35Z".
Est-ce parce qu'il y a un point dans le résultat du modifiable ?
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 14 nov. 2012 à 17:05
WHERE CODENAF= " & Modifiable1
déjà : un espace manque
et de quel type est CODENAF ?
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 14 nov. 2012 à 18:40
et donc ===>> puisque dans la requête, la valeur texte doit être mise entre guillemets ===>>
Tu as le choix entre :
"SELECT CODENAF FROM NAF WHERE CODENAF = '" & Modifiable1) & "'"
et
"SELECT CODENAF FROM NAF WHERE CODENAF = """ & Modifiable1) & """"
Puis-je te faire remarque que tu aurais vu seul cette erreur si tu avais suivi le conseil de lolokun ? , à savoir :
Affiche ta requete SQL avant de l'exécuter pour vérifier qu'elle est correcte
Belle perte de temps.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Merci mais j'avais affiché ma requete, mais je comprenais toujours pas...
J'ai fait ce que tu m'as dit mais maintenant ça bloque au niveau du Texte4.Value=rs.Fields(0)...
Option Compare Database
Private Sub Commande3_Click()
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
rs.ActiveConnection = CurrentProject.Connection
MsgBox ("SELECT CODENAF FROM NAF WHERE LIBELLE = """ & Modifiable1 & """")
rs.Open "SELECT CODENAF FROM NAF WHERE LIBELLE = """ & Modifiable1 & """"
rs.Close
Texte4.Value = rs.Fields(0)
End Sub
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 14 nov. 2012 à 20:31
Tout cela paraitrait incroyable. C'est pourtant vrai !
Je vais dormir de ce pas.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ