si id_commande est de type numérique c'est normal !Envoyé par Sami Xite
si id_commande est de type numérique c'est normal !Envoyé par Sami Xite
Amicalement
Toujours ce message d'erreur:Envoyé par DMboup
Erreur d'execution
Type de données incompatible dans l'expression du critère
id_commande est de la forme texte dans ma table mais ne contient que des chiffres
Je suis persuadé que c'est au niveau du module que qqchose cloche mais quoi ??!!
Ben evidemment que c'est au niveau du module :
puisque tu as trouvé que id_commande est de type String :
il faut corriger en conséquence ta fonction concat_type()
Tu as 2 endroits à corriger
"Always look at the bright side of life." Monty Python.
Ca y est j'ai qqchose !!
La requête fonctionne mais par contre elle ne fait pas de regroupement sur id_commande
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Public Function concat_type(id_commande As Long) As String Dim res As DAO.Recordset Dim SQL As String 'Selectionne les types de commande SQL = "SELECT type FROM cpt_type WHERE id_commande=" & "id_commande" Set res = CurrentDb.OpenRecordset(SQL) 'Concatene les différents enregistrement While Not res.EOF concat_type = concat_type & res.Fields(0).Value & " " res.MoveNext Wend 'Enleve le dernier espace concat_type = Left(concat_type, Len(concat_type) - 1) 'libere la mémoire Set res = Nothing End Function
Je m'explique si j'ai dans cpt_type
id_commande type
1------------1x40
1------------1x20
1------------2x40
2------------3x40
2------------1x20
il me sort :
id_commande colisage
1------------1x40 1x20 2x40 3x40 1x20
2------------1x40 1x20 2x40 3x40 1x20
J'apprécie vraiment votre patience ...juste un dernier coup de main et je retourne dans mon terrier d'ignorance![]()
Encore :
une modif dans (je te laisse deviner à la place de Long)
et puis remplacer :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Public Function concat_type(id_commande As Long) As String
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part ... WHERE id_commande=" & "id_commande"
ça devrait le faire
Code : Sélectionner tout - Visualiser dans une fenêtre à part WHERE id_commande='" & id_commande & "'"
"Always look at the bright side of life." Monty Python.
Ca marche !!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Public Function concat_type(id_commande As String) As String Dim res As DAO.Recordset Dim SQL As String 'Selectionne les types de commande SQL = "SELECT type FROM cpt_type WHERE id_commande='" & id_commande & "'" Set res = CurrentDb.OpenRecordset(SQL, dbOpenDynaset, 0, dbReadOnly) 'Concatene les différents enregistrement While Not res.EOF concat_type = concat_type & res.Fields(0).Value & " " res.MoveNext Wend 'Enleve le dernier espace concat_type = RTrim(concat_type) 'libere la mémoire Set res = Nothing End Function![]()
Merci à tous pour votre aide
PS : Sur String j'ai bon ??
...tout bon ... et ça marche : bravo !Sur String j'ai bon ??
Alors n'oublie pas de cliquer [résolu]
"Always look at the bright side of life." Monty Python.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager