récupérer la taille d'une partie d'un champ dans une requete
3 réponses
oualaléreur
Bonjour,
Dans une requ=EAte, j'ai besoin de r=E9cup=E9rer la taille du champ
entr=E9 dans une combo-box. C'est aussi la taille de la partie d'un
champ texte situ=E9e avant le premier caract=E8re =AB / =BB, ce dernier
=E9tant pr=E9sent dans une des tables de la base, ce qui n'est pas le
cas du premier (puisque ce n'est que le d=E9but de ce champ).
J'ai d=E9ja essay=E9 avec la fonction Left suivie de InStr (qui retourne
un Long) , mais la requete est alors trop compliqu=E9e pour etre lue par
access. Et je ne connais pas la marche =E0 suivre pour remplacer la
partie InStr... par une variable. Suis d=E9butant en VBA...
Donc je cherche des solutions, toute proposition est la bienvenue, et
si c'est un peut obscur, n'h=E9sitez pas =E0 me poser des questions.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
oualaléreur
Pour compléter ma question :
J'ai pensé utiliser Left([Tbl_CIS]![SchematicPart],Taille()) Like [combo_Schematic_Library] & "*" dans ma requête et rafraîchir taille dans l'event afterupdate de la première combo-box :
Private Sub combo_Schematic_Library_AfterUpdate() Dim taille As Integer taille = InStr([Tbl_CIS]![SchematicPart], "") End Sub
Puis de passer par la fonction :
Public Function Taille() As Integer Taille = taille End Function
Mais je ne sais ni si j'oublie quelque chose, ni ou placer la fonction Taille.
Pour compléter ma question :
J'ai pensé utiliser Left([Tbl_CIS]![SchematicPart],Taille()) Like
[combo_Schematic_Library] & "*" dans ma requête et rafraîchir
taille dans l'event afterupdate de la première combo-box :
Private Sub combo_Schematic_Library_AfterUpdate()
Dim taille As Integer
taille = InStr([Tbl_CIS]![SchematicPart], "")
End Sub
Puis de passer par la fonction :
Public Function Taille() As Integer
Taille = taille
End Function
Mais je ne sais ni si j'oublie quelque chose, ni ou placer la
fonction Taille.
J'ai pensé utiliser Left([Tbl_CIS]![SchematicPart],Taille()) Like [combo_Schematic_Library] & "*" dans ma requête et rafraîchir taille dans l'event afterupdate de la première combo-box :
Private Sub combo_Schematic_Library_AfterUpdate() Dim taille As Integer taille = InStr([Tbl_CIS]![SchematicPart], "") End Sub
Puis de passer par la fonction :
Public Function Taille() As Integer Taille = taille End Function
Mais je ne sais ni si j'oublie quelque chose, ni ou placer la fonction Taille.
Pierre CFI [mvp]
bonjour tu peux donner ce que tu as écrit dans la req pour l'autre solution il ne faut pas donner le méme nom à ta fonction et ta variable, de plus déclare là en public dans un module mais une requete devrait fonctionner à condition d'avoir bien choisit le no de colonne de ta liste :o)
-- Pierre MVP microsoft Access Plein de choses à voir ici : http://users.skynet.be/mpfa/
"oualaléreur" a écrit dans le message de news:
Pour compléter ma question :
J'ai pensé utiliser Left([Tbl_CIS]![SchematicPart],Taille()) Like [combo_Schematic_Library] & "*" dans ma requête et rafraîchir taille dans l'event afterupdate de la première combo-box :
Private Sub combo_Schematic_Library_AfterUpdate() Dim taille As Integer taille = InStr([Tbl_CIS]![SchematicPart], "") End Sub
Puis de passer par la fonction :
Public Function Taille() As Integer Taille = taille End Function
Mais je ne sais ni si j'oublie quelque chose, ni ou placer la fonction Taille.
bonjour
tu peux donner ce que tu as écrit dans la req
pour l'autre solution il ne faut pas donner le méme nom à ta fonction et ta
variable, de plus déclare là en public dans un module
mais une requete devrait fonctionner à condition d'avoir bien choisit le no
de colonne de ta liste :o)
--
Pierre
MVP microsoft Access
Plein de choses à voir ici :
http://users.skynet.be/mpfa/
"oualaléreur" <benoit.vrignon@cpe.fr> a écrit dans le message de news:
1131978382.477295.315440@g47g2000cwa.googlegroups.com...
Pour compléter ma question :
J'ai pensé utiliser Left([Tbl_CIS]![SchematicPart],Taille()) Like
[combo_Schematic_Library] & "*" dans ma requête et rafraîchir
taille dans l'event afterupdate de la première combo-box :
Private Sub combo_Schematic_Library_AfterUpdate()
Dim taille As Integer
taille = InStr([Tbl_CIS]![SchematicPart], "")
End Sub
Puis de passer par la fonction :
Public Function Taille() As Integer
Taille = taille
End Function
Mais je ne sais ni si j'oublie quelque chose, ni ou placer la
fonction Taille.
bonjour tu peux donner ce que tu as écrit dans la req pour l'autre solution il ne faut pas donner le méme nom à ta fonction et ta variable, de plus déclare là en public dans un module mais une requete devrait fonctionner à condition d'avoir bien choisit le no de colonne de ta liste :o)
-- Pierre MVP microsoft Access Plein de choses à voir ici : http://users.skynet.be/mpfa/
"oualaléreur" a écrit dans le message de news:
Pour compléter ma question :
J'ai pensé utiliser Left([Tbl_CIS]![SchematicPart],Taille()) Like [combo_Schematic_Library] & "*" dans ma requête et rafraîchir taille dans l'event afterupdate de la première combo-box :
Private Sub combo_Schematic_Library_AfterUpdate() Dim taille As Integer taille = InStr([Tbl_CIS]![SchematicPart], "") End Sub
Puis de passer par la fonction :
Public Function Taille() As Integer Taille = taille End Function
Mais je ne sais ni si j'oublie quelque chose, ni ou placer la fonction Taille.
oualaléreur
Bonjour,
le problème venait effectivement de la requête : Expr1: Right(Tbl_CIS!SchematicPart,Len(Tbl_CIS!SchematicPart)-InStr(Tbl_CIS!Schema ticPart,"")) pour la liste, et Left([Tbl_CIS]![SchematicPart],Len([combo_Schematic_Library])) pour filtrer avec comme critère : Like [combo_Schematic_Library]. (juste)
Au lieu de : (Left([Tbl_CIS]![SchematicPart],InStr([Tbl_CIS]![SchematicPart],"")-1)) Like [combo_Schematic_Library]. (faux)
C'est plus simple et quand même plus logique. Merci
Bonjour,
le problème venait effectivement de la requête : Expr1:
Right(Tbl_CIS!SchematicPart,Len(Tbl_CIS!SchematicPart)-InStr(Tbl_CIS!Schema ticPart,""))
pour la liste, et
Left([Tbl_CIS]![SchematicPart],Len([combo_Schematic_Library])) pour
filtrer avec comme critère : Like [combo_Schematic_Library].
(juste)
Au lieu de :
(Left([Tbl_CIS]![SchematicPart],InStr([Tbl_CIS]![SchematicPart],"")-1))
Like [combo_Schematic_Library]. (faux)
C'est plus simple et quand même plus logique. Merci
le problème venait effectivement de la requête : Expr1: Right(Tbl_CIS!SchematicPart,Len(Tbl_CIS!SchematicPart)-InStr(Tbl_CIS!Schema ticPart,"")) pour la liste, et Left([Tbl_CIS]![SchematicPart],Len([combo_Schematic_Library])) pour filtrer avec comme critère : Like [combo_Schematic_Library]. (juste)
Au lieu de : (Left([Tbl_CIS]![SchematicPart],InStr([Tbl_CIS]![SchematicPart],"")-1)) Like [combo_Schematic_Library]. (faux)
C'est plus simple et quand même plus logique. Merci