Pb requête VBA

Résolu/Fermé
niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008 - 26 mars 2008 à 08:19
boOosty Messages postés 2 Date d'inscription samedi 3 mai 2008 Statut Membre Dernière intervention 18 mai 2008 - 18 mai 2008 à 12:18
Bonjour a tous,

j'ai un petit soucis sur une de mes requêtes : "type de donnée incompatibles dans l'expression du critère" au niveau de mon set. est ce que quelqu'un saurai pq?

Requete6 = "SELECT Install FROM CONSO WHERE ID='" & chaine & "'"
Set RSCONSO6 = BDDCONSO.OpenRecordset(Requete6)

une autre petite question : pour parcourir ma BDD pour récupérer les élèments dans un treeview = chaine, c'est bien :

While Not RSCONSO6.EOF

TreeView1.Nodes.Add = RSCONSO6!Install

RSCONSO6.MoveNext

Wend

merci de votre aide !

4 réponses

blux Messages postés 26490 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 18 novembre 2024 3 316
26 mars 2008 à 08:23
Salut,

si ID est numérique, il ne faut pas mettre de single-quote, car autrement access pense à une chaine...
WHERE ID=" & chaine & "
--

A+ Blux
 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
0
niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008
26 mars 2008 à 08:27
merci de répondre ! c'est sympas!

mon id est bien une chaine de caractère, c'est pourquoi je n'arrive pas à comprendre l'erreur bien que celle-ci vient bien de ma condition. aurais tu une autre idée ?
0
blux Messages postés 26490 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 18 novembre 2024 3 316
26 mars 2008 à 08:54
J'avais pas vu que c'était au niveau du SET...:-)

RSCONSO6 est déclaré en DAO.recordset ?

C'est quelle version d'access ?
0
niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008
26 mars 2008 à 09:06
c'est bon ma requête passe maintenant ! cool merci

le seul hic c'est que je sais pas comment charger mon treeview avec les élèments récup de cette requête, parce que ce que j'ai fait ne marche pas.
0
blux Messages postés 26490 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 18 novembre 2024 3 316
26 mars 2008 à 09:11
Il sort d'où ton treeview, parce qu'en standard, ça n'existe pas sous access ?
Donc, il faudrait voir avec la doc qui l'accompagne.
0
niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008
26 mars 2008 à 09:14
en fait je suis sous excel et access je m'en sert pour la récup de données.
j'ai fait des petits changements pour mon chargement de treeview mais ca ne m'affiche pas ce qui est récup de la BDD.

While Not RSCONSO6.EOF
TreeView1.Nodes.Clear
TreeView1.Nodes.Add , , "Install" & RSCONSO6!Install

RSCONSO6.MoveNext

Wend

en fait j'ai l'impression que ca prend que le Clear
0
niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008 > niny@ Messages postés 107 Date d'inscription mercredi 12 mars 2008 Statut Membre Dernière intervention 16 septembre 2008
26 mars 2008 à 09:46
c'est bon fallait juste rajouter :


For Each Fields In RSCONSO6.Fields
TreeView1.Nodes.Add , , "chaine", RSCONSO6!Install
Next

merci @+
0
boOosty Messages postés 2 Date d'inscription samedi 3 mai 2008 Statut Membre Dernière intervention 18 mai 2008
18 mai 2008 à 12:18
bonjour a tous, voila j'ai un programme VBA a réaliser

je rentre le nom du salariés et le nombre d'heure supplémentaire (inputbox)

puis dans une fonction. il faudrait qu'en fonction du nombre d'heure supplémentaire effectue ceci me renvoie un"prix" ensuite il faudrait faire un calcul qui est le (nombre D'heures Sup X le "prix") je pense réaliser ceci dans une fonction. (exemple : + de 35h < 40h = 150euros ; 40h>45h =200; + de 45h=250euros

dans le msgbox on affiche le nom du salarié, et la phrase suivante par exemple pour une nombre d'heure supplémentaire de ... et un taux de ... votre prime s'élève a ...

voila le problème c'est que je n'aie aucune idée de comment appeler mes variables et comment les déclarer (byte ou integer ) je ne sais pas comment appelé la fonction dans le programme VBA function(...)

si quelqu'un a une idée d'un programme VBA capable de faire ça se serais vraiment gentil de me donner un petit coup de main...

merci d'avance!!!!!!
0