GG1712
Messages postés2Date d'inscriptionmercredi 11 janvier 2012StatutMembreDernière intervention18 janvier 2012
-
17 janv. 2012 à 20:44
NHenry
Messages postés15069Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention29 mai 2023
-
18 janv. 2012 à 14:02
Bonjour,
Je "bidouille" en dev. depuis un moment, absolument sans aucune compétence. En fait je récupère des sources que je "bricole" pour obtenir ce que je souhaite.
J'ai téléchargé des sources de programmes VB, qui fonctionnent très bien, mais rencontre un problème, je pense, assez simple pour un "pro" du développement.
Je souhaiterais dans la ligne de commande suivante, intégrer le nom de la table que j'ai récupéré ailleurs.
If Not IsNull(resultatADO![NomTable]) Then DNom = resultatADO![NomTable]
J'ai essayé :
NomTable ="NT"
If Not IsNull(resultatADO![+NomTable+]) Then DNom = resultatADO![+NomTable+]
If Not IsNull(resultatADO!["NomTable"]) Then DNom = resultatADO!["NomTable"]
If Not IsNull(resultatADO![+"NomTable"+]) Then DNom = resultatADO![+"NomTable"+]
mais rien ne fonctionne et l'erreur suivante se produit :
"Impossible de trouver l'objet dans la collection correspondant au nom ou à la référence ordinale demandée".
Je rame.
Quelqu'un peut il m'aider ?.
NHenry
Messages postés15069Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention29 mai 2023158 17 janv. 2012 à 20:54
Bonjour,
Comment charges-tu ton Recordset ?
As-tu regardé la propriété Fields ?
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
GG1712
Messages postés2Date d'inscriptionmercredi 11 janvier 2012StatutMembreDernière intervention18 janvier 2012 18 janv. 2012 à 13:49
Merci de ta réponse.
Comme je te l'ai dit je suis une vraie "truffe" en programmation et j'utilise des sources, par ailleurs trouvées sur ce site, que je bidouille, sans ne rien y connaitre.
En fait dans celles que je reprend, il n'y a qu'un endroit ou je trouve Recorset.
Dim resultatADO As New ADODB.Recordset ' Résultat de la commande
Quant a resultatADO, je le retrouve dans la "procédure" de lecture de la base :
If Not IsNull(CStr(resultatADO!Nom)) Then DNom = CStr(resultatADO!Nom)
Debug.Print "DNom :"; DNom
?
resultatADO.MoveNext ' Passe à l'enregistrement suivant.
Quant a Fields (?), jamais utilisé dans le programme.
Je ne sais pas si tu pourras m'aider avec ca, mais comme je te l'ai dit je suis une grosse buse.
NHenry
Messages postés15069Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention29 mai 2023158 18 janv. 2012 à 14:02
Bonjour,
Parcours la propriété Fields, tu verras qu'il y a une sous proprioété contenant le nom de la table pour chaque colonne sélectionnée.
Si tu veux passer par ! utilises les alias.
Select MaTabkle.MonChamp As MonAlias ...
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site