Access et Requete SQL impossible ?
Résolu
Didoch54000
Messages postés
308
Date d'inscription
Statut
Membre
Dernière intervention
-
Didoch54000 Messages postés 308 Date d'inscription Statut Membre Dernière intervention -
Didoch54000 Messages postés 308 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous ,
Actuellement en train de creer un peit GPI je me permets de vous solliciter pour une question :
Structure :
Table (tbl_Pc) qui contient un champ Config de type Texte (Alleger, Complet, Administrateur,...)
Table (tbl_Config) qui contient les champs logiciels , version , liscence...
Dans mon formulaire qui affiche le contenu de la tbl_Pc je veut creer un champ nomé txt_ConfigOption qui me retourne les données de la tbl_config en fonction de Me.Config (config issue de la table_Pc)
Je fait :
Cependant j'ai une erreur il ne veut pas du DoCmd.RunSQL(SQL_Rappel)
Merci pour votre aide
Actuellement en train de creer un peit GPI je me permets de vous solliciter pour une question :
Structure :
Table (tbl_Pc) qui contient un champ Config de type Texte (Alleger, Complet, Administrateur,...)
Table (tbl_Config) qui contient les champs logiciels , version , liscence...
Dans mon formulaire qui affiche le contenu de la tbl_Pc je veut creer un champ nomé txt_ConfigOption qui me retourne les données de la tbl_config en fonction de Me.Config (config issue de la table_Pc)
Je fait :
sub AfficherOptionConfig() if not me.config.value ="" Dim SQL_Rappel as string SQL_Rappel = "Select Logiciel , Version from tbl_Config Where tbl_Config.Nom = '" & Me.Config & "';" Me.txt_ConfigOption = DoCmd.RunSQL(SQL_Rappel) Else Exit Sub End Sub
Cependant j'ai une erreur il ne veut pas du DoCmd.RunSQL(SQL_Rappel)
Merci pour votre aide
A voir également:
- Access et Requete SQL impossible ?
- Acer quick access - Forum logiciel systeme
- Quick Access service ✓ - Forum PC portable
- Désinstaller ACER QUICK ACCESS - Forum Logiciels
- Access appdata - Guide
- Logiciel sql - Télécharger - Bases de données
10 réponses
tu as me.config.value puis apres Me.Config, il faut respecter la casse et si tu veux une valeur en retour, il faut ecrire Me.Config.value, enfin je sais pas trop mais ça doit être ça
Salut,
ça ne marchera pas comme ça. Pour un résultat de requête, il faut une liste déroulante (même limitée à une ligne), et surtout on n'exécute pas une requête dans un champ, mais on met la propriété du champ à la valeur de la requête (c'est access qui va la lancer à l'affichage du champ) :
On peut aussi utiliser un dlookup (c'est plus facile, mais chacun fait comme il veut...)
ça ne marchera pas comme ça. Pour un résultat de requête, il faut une liste déroulante (même limitée à une ligne), et surtout on n'exécute pas une requête dans un champ, mais on met la propriété du champ à la valeur de la requête (c'est access qui va la lancer à l'affichage du champ) :
me.ma_liste.rowsource = SQL_RappelCa devrait aller mieux !
On peut aussi utiliser un dlookup (c'est plus facile, mais chacun fait comme il veut...)
tu as raison blux, une requete SQL se colle dans un tableau , un row, une ligne d'enregistrement, soit ici deux valeurs ( Logiciel, Version) que tu essayes d'affecter dans une variable simple texte, donc ça ne peut pas marcher.
Il faut donc charger le tableau avec l'execution de la requete dans un row et ensuite le faire defiler pour en extraire l'enregistrement voulu, ici tu ne dois avoir qu'une seule ligne.
Il faut donc charger le tableau avec l'execution de la requete dans un row et ensuite le faire defiler pour en extraire l'enregistrement voulu, ici tu ne dois avoir qu'une seule ligne.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je ne pense pas avoir tout saisi, revoici mon code :
Toutefois il me fait la meme erreur d'éxécution que tout à l'heure à savoir :
Erreur de compilation :
Fonction ou variable attendue sur : DoCmd.RunSQL(SQL_Rappel)
Sub AfficherOptionConfig() DoCmd.SetWarnings False If Not Me.Config.Value = "" Then ' Me.lst_ConfigOption.Enabled Dim SQL_Rappel As String SQL_Rappel = "Select Logiciel, Version from tbl_Config Where tbl_Config.Nom ='" & Me.Config & "';" Me.lst_ConfigOption.RowSource = DoCmd.RunSQL(SQL_Rappel) Else Exit Sub End If End Sub Private Sub Config_Change() Call AfficherOptionConfig End Sub Private Sub Form_Load() Call AfficherOptionConfig End Sub
Toutefois il me fait la meme erreur d'éxécution que tout à l'heure à savoir :
Erreur de compilation :
Fonction ou variable attendue sur : DoCmd.RunSQL(SQL_Rappel)
Je rectifie Mon Post précédent , l'érreur était de ma part cela fonctionne correctement sauf que je n'ai que logiciel dans ma liste est-il possible d'avoir 2champs dans une même liste ?
Merci en tout cas pour votre aide !
Merci en tout cas pour votre aide !
Il faut modifier ta zone de liste pour lui faire afficher 2 colonnes et indiquer leur largeur...
En mode création, onglet format
- champ 'nombre de colonnes'
- champ 'largeur colonnes' (en cm séparés par des ;), ex : 1,5;2, il est possible également de mettre 0 en taille pour ne pas afficher la colonne même si elle est présente dans la requête (1,5;0;3)
En mode création, onglet format
- champ 'nombre de colonnes'
- champ 'largeur colonnes' (en cm séparés par des ;), ex : 1,5;2, il est possible également de mettre 0 en taille pour ne pas afficher la colonne même si elle est présente dans la requête (1,5;0;3)
oui mais cf mon avant dernier post tu dois creer une ligne d'enregistrement (row) qui est un tableau contenant autant de champs que tu veux, tu dois le faire défiler et en extraire les valeurs
Re,
Maintenant que mon code fonctionne j'aimerai creer plusieurs onglet, mais je ne comprend pas comment cela fonctionne j'ai essayer de manaiere implicte (pour moi ) à savoir:
J'ai creer un onglet et mis la zone de liste dedans,ohhhh ca marche cool
Je fait un deuxieme onglet et je veut mettre une autre zone de liste qui me donne les infos complémentaire de mes Pc et la c'est le drame car en fait je n'ai pas mis la 1ere zone de liste dans l'onglet mais par dessus du coup je me retrouve avec mes zone de liste dans tous mes onglets...
Je ne sais pas si sure cette explication j'ai été assez clair !
Maintenant que mon code fonctionne j'aimerai creer plusieurs onglet, mais je ne comprend pas comment cela fonctionne j'ai essayer de manaiere implicte (pour moi ) à savoir:
J'ai creer un onglet et mis la zone de liste dedans,ohhhh ca marche cool
Je fait un deuxieme onglet et je veut mettre une autre zone de liste qui me donne les infos complémentaire de mes Pc et la c'est le drame car en fait je n'ai pas mis la 1ere zone de liste dans l'onglet mais par dessus du coup je me retrouve avec mes zone de liste dans tous mes onglets...
Je ne sais pas si sure cette explication j'ai été assez clair !