OVH Cloud OVH Cloud

Compteur dans une requete

8 réponses
Avatar
Dr Jekyll
Bonjour
J'ai trouve dans les archives une fonction pour avoir une colonne numero de
ligne dans une requete:
*****
Public Function ajout(intNo As Integer) As Integer

Static Cpt
Cpt = Cpt + intNo
ajout = Cpt
End Function
******

Dans ma requete, j'ai cree une requete avec une colonne : NoLigne:
Ajout(Compte([Unchamp]))
Cette requete est en regroupement avec le nouveau champ en expression

Quand je la lance pas de problème, mais si je la relance une deuxième fois,
il ne me met pas le compteur à zero.

Comment puis-je initialiser à chaque démarrage?


Merci de vos idees

8 réponses

Avatar
Raymond [mvp]
Bonjour.

ça parait difficile dans une requête sinon passer par un Dim en dehors de la
fonction (dans les déclaratives). il faudrait que tu puisses remettre à zéro
dans la procédure qui lance la requête, est-ce possible ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Dr Jekyll" a écrit dans le message de
news:412997b1$0$29669$
Bonjour
J'ai trouve dans les archives une fonction pour avoir une colonne numero
de

ligne dans une requete:
*****
Public Function ajout(intNo As Integer) As Integer

Static Cpt
Cpt = Cpt + intNo
ajout = Cpt
End Function
******

Dans ma requete, j'ai cree une requete avec une colonne : NoLigne:
Ajout(Compte([Unchamp]))
Cette requete est en regroupement avec le nouveau champ en expression

Quand je la lance pas de problème, mais si je la relance une deuxième
fois,

il ne me met pas le compteur à zero.

Comment puis-je initialiser à chaque démarrage?


Merci de vos idees




Avatar
Jean-Claude
Merci pour la réponse, mais je ne sais pas comment remettre à zero. Si je
ferme l'application et que je relance ca marche

Merci de toute façon, sinon je fais faire un etat et hp...plus de probleme


"Raymond [mvp]" a écrit dans le message de
news:
Bonjour.

ça parait difficile dans une requête sinon passer par un Dim en dehors de
la

fonction (dans les déclaratives). il faudrait que tu puisses remettre à
zéro

dans la procédure qui lance la requête, est-ce possible ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Dr Jekyll" a écrit dans le message de
news:412997b1$0$29669$
Bonjour
J'ai trouve dans les archives une fonction pour avoir une colonne numero
de

ligne dans une requete:
*****
Public Function ajout(intNo As Integer) As Integer

Static Cpt
Cpt = Cpt + intNo
ajout = Cpt
End Function
******

Dans ma requete, j'ai cree une requete avec une colonne : NoLigne:
Ajout(Compte([Unchamp]))
Cette requete est en regroupement avec le nouveau champ en expression

Quand je la lance pas de problème, mais si je la relance une deuxième
fois,

il ne me met pas le compteur à zero.

Comment puis-je initialiser à chaque démarrage?


Merci de vos idees








Avatar
Yann
Salut,
Une idée, comme ça, au passage...

Public Function ajout(intNo As Integer) As Integer
Static Cpt As Integer
Static MyTime As Date
If Time - MyTime > TimeSerial(0;0;1) Then Cpt = 0
MyTime = Time
Cpt = Cpt + intNo
ajout = Cpt
End Function

Bye
Yann

-----Message d'origine-----
Merci pour la réponse, mais je ne sais pas comment
remettre à zero. Si je

ferme l'application et que je relance ca marche

Merci de toute façon, sinon je fais faire un etat et
hp...plus de probleme



"Raymond [mvp]" a écrit
dans le message de

news:
Bonjour.

ça parait difficile dans une requête sinon passer par
un Dim en dehors de


la
fonction (dans les déclaratives). il faudrait que tu
puisses remettre à


zéro
dans la procédure qui lance la requête, est-ce
possible ?



--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Dr Jekyll" a écrit dans le
message de


news:412997b1$0$29669$
Bonjour
J'ai trouve dans les archives une fonction pour
avoir une colonne numero



de
ligne dans une requete:
*****
Public Function ajout(intNo As Integer) As Integer

Static Cpt
Cpt = Cpt + intNo
ajout = Cpt
End Function
******

Dans ma requete, j'ai cree une requete avec une
colonne : NoLigne:



Ajout(Compte([Unchamp]))
Cette requete est en regroupement avec le nouveau
champ en expression




Quand je la lance pas de problème, mais si je la
relance une deuxième



fois,
il ne me met pas le compteur à zero.

Comment puis-je initialiser à chaque démarrage?


Merci de vos idees








.





Avatar
Jean-Claude
Merci mais ca ne marche pas :-)

Enfin, qui tente rien n,'a rien

bonne soirée

"Yann" a écrit dans le message de
news:b53d01c4891e$f1a122f0$
Salut,
Une idée, comme ça, au passage...

Public Function ajout(intNo As Integer) As Integer
Static Cpt As Integer
Static MyTime As Date
If Time - MyTime > TimeSerial(0;0;1) Then Cpt = 0
MyTime = Time
Cpt = Cpt + intNo
ajout = Cpt
End Function

Bye
Yann

-----Message d'origine-----
Merci pour la réponse, mais je ne sais pas comment
remettre à zero. Si je

ferme l'application et que je relance ca marche

Merci de toute façon, sinon je fais faire un etat et
hp...plus de probleme



"Raymond [mvp]" a écrit
dans le message de

news:
Bonjour.

ça parait difficile dans une requête sinon passer par
un Dim en dehors de


la
fonction (dans les déclaratives). il faudrait que tu
puisses remettre à


zéro
dans la procédure qui lance la requête, est-ce
possible ?



--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Dr Jekyll" a écrit dans le
message de


news:412997b1$0$29669$
Bonjour
J'ai trouve dans les archives une fonction pour
avoir une colonne numero



de
ligne dans une requete:
*****
Public Function ajout(intNo As Integer) As Integer

Static Cpt
Cpt = Cpt + intNo
ajout = Cpt
End Function
******

Dans ma requete, j'ai cree une requete avec une
colonne : NoLigne:



Ajout(Compte([Unchamp]))
Cette requete est en regroupement avec le nouveau
champ en expression




Quand je la lance pas de problème, mais si je la
relance une deuxième



fois,
il ne me met pas le compteur à zero.

Comment puis-je initialiser à chaque démarrage?


Merci de vos idees








.





Avatar
Raymond [mvp]
As-tu essayé de sortir Cpt et le placer en déclaratives en Dim;
avant de lancer ta requête tu mets à zero le cpt:
Cpt = 0
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean-Claude" a écrit dans le message de
news:412a2ea6$0$14617$
Merci mais ca ne marche pas :-)

Enfin, qui tente rien n,'a rien

bonne soirée


Avatar
Yann
Salut Jean-Claude,
Ca marche très bien chez moi, a une faute près...
Remplace TimeSerial(0;0;1) par TimeSerial(0,0,1)

Bye
Yann

-----Message d'origine-----
Merci mais ca ne marche pas :-)

Enfin, qui tente rien n,'a rien

bonne soirée

"Yann" a écrit dans le message de
news:b53d01c4891e$f1a122f0$
Salut,
Une idée, comme ça, au passage...

Public Function ajout(intNo As Integer) As Integer
Static Cpt As Integer
Static MyTime As Date
If Time - MyTime > TimeSerial(0;0;1) Then Cpt = 0
MyTime = Time
Cpt = Cpt + intNo
ajout = Cpt
End Function

Bye
Yann

-----Message d'origine-----
Merci pour la réponse, mais je ne sais pas comment
remettre à zero. Si je

ferme l'application et que je relance ca marche

Merci de toute façon, sinon je fais faire un etat et
hp...plus de probleme



"Raymond [mvp]" a écrit
dans le message de

news:
Bonjour.

ça parait difficile dans une requête sinon passer par
un Dim en dehors de


la
fonction (dans les déclaratives). il faudrait que tu
puisses remettre à


zéro
dans la procédure qui lance la requête, est-ce
possible ?



--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Dr Jekyll" a écrit dans le
message de


news:412997b1$0$29669$
Bonjour
J'ai trouve dans les archives une fonction pour
avoir une colonne numero



de
ligne dans une requete:
*****
Public Function ajout(intNo As Integer) As Integer

Static Cpt
Cpt = Cpt + intNo
ajout = Cpt
End Function
******

Dans ma requete, j'ai cree une requete avec une
colonne : NoLigne:



Ajout(Compte([Unchamp]))
Cette requete est en regroupement avec le nouveau
champ en expression




Quand je la lance pas de problème, mais si je la
relance une deuxième



fois,
il ne me met pas le compteur à zero.

Comment puis-je initialiser à chaque démarrage?


Merci de vos idees








.




.






Avatar
Jean-Claude
Merci mais j'avais modifié les points virgules en virgules.
Rien à faire....

Bon merci Raymond mais même résultat

Tant pis pour lui, je le ferai enn état... Na et Na !!!!!

Bonne journée

"Yann" a écrit dans le message de
news:c0d401c489a4$0f80fd10$
Salut Jean-Claude,
Ca marche très bien chez moi, a une faute près...
Remplace TimeSerial(0;0;1) par TimeSerial(0,0,1)

Bye
Yann

-----Message d'origine-----
Merci mais ca ne marche pas :-)

Enfin, qui tente rien n,'a rien

bonne soirée

"Yann" a écrit dans le message de
news:b53d01c4891e$f1a122f0$
Salut,
Une idée, comme ça, au passage...

Public Function ajout(intNo As Integer) As Integer
Static Cpt As Integer
Static MyTime As Date
If Time - MyTime > TimeSerial(0;0;1) Then Cpt = 0
MyTime = Time
Cpt = Cpt + intNo
ajout = Cpt
End Function

Bye
Yann

-----Message d'origine-----
Merci pour la réponse, mais je ne sais pas comment
remettre à zero. Si je

ferme l'application et que je relance ca marche

Merci de toute façon, sinon je fais faire un etat et
hp...plus de probleme



"Raymond [mvp]" a écrit
dans le message de

news:
Bonjour.

ça parait difficile dans une requête sinon passer par
un Dim en dehors de


la
fonction (dans les déclaratives). il faudrait que tu
puisses remettre à


zéro
dans la procédure qui lance la requête, est-ce
possible ?



--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Dr Jekyll" a écrit dans le
message de


news:412997b1$0$29669$
Bonjour
J'ai trouve dans les archives une fonction pour
avoir une colonne numero



de
ligne dans une requete:
*****
Public Function ajout(intNo As Integer) As Integer

Static Cpt
Cpt = Cpt + intNo
ajout = Cpt
End Function
******

Dans ma requete, j'ai cree une requete avec une
colonne : NoLigne:



Ajout(Compte([Unchamp]))
Cette requete est en regroupement avec le nouveau
champ en expression




Quand je la lance pas de problème, mais si je la
relance une deuxième



fois,
il ne me met pas le compteur à zero.

Comment puis-je initialiser à chaque démarrage?


Merci de vos idees








.




.






Avatar
Yann
Salut,
Ca fonctionne bien chez moi, mais lorsque je
redimentionne ma fenêtre de requête, effectivement ça ne
fonctionne plus... Aussi, la contraite sur le fenêtre de
la requête est de ne pas la changer, où de la réexécuter
après...

Public Function ajout(intNo As Integer) As Integer
Static Cpt As Integer
Static MyTime As Date
' Ici, si le temps entre 2 appels de cette fonction est
supérieur à 1 seconde, alors remettre le compteur à zéro
If Time - MyTime > TimeSerial(0,0,1) Then Cpt = 0
MyTime = Time
Cpt = Cpt + intNo
ajout = Cpt
End Function

Bye
Yann

-----Message d'origine-----
Merci mais j'avais modifié les points virgules en
virgules.

Rien à faire....

Bon merci Raymond mais même résultat

Tant pis pour lui, je le ferai enn état... Na et Na !!!!!

Bonne journée

"Yann" a écrit dans le message de
news:c0d401c489a4$0f80fd10$
Salut Jean-Claude,
Ca marche très bien chez moi, a une faute près...
Remplace TimeSerial(0;0;1) par TimeSerial(0,0,1)

Bye
Yann

-----Message d'origine-----
Merci mais ca ne marche pas :-)

Enfin, qui tente rien n,'a rien

bonne soirée

"Yann" a écrit dans le message de
news:b53d01c4891e$f1a122f0$
Salut,
Une idée, comme ça, au passage...

Public Function ajout(intNo As Integer) As Integer
Static Cpt As Integer
Static MyTime As Date
If Time - MyTime > TimeSerial(0;0;1) Then Cpt = 0
MyTime = Time
Cpt = Cpt + intNo
ajout = Cpt
End Function

Bye
Yann

-----Message d'origine-----
Merci pour la réponse, mais je ne sais pas comment
remettre à zero. Si je

ferme l'application et que je relance ca marche

Merci de toute façon, sinon je fais faire un etat et
hp...plus de probleme



"Raymond [mvp]" a écrit
dans le message de

news:
Bonjour.

ça parait difficile dans une requête sinon passer par
un Dim en dehors de


la
fonction (dans les déclaratives). il faudrait que tu
puisses remettre à


zéro
dans la procédure qui lance la requête, est-ce
possible ?



--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le
forum






"Dr Jekyll" a écrit dans
le




message de
news:412997b1$0$29669$
Bonjour
J'ai trouve dans les archives une fonction pour
avoir une colonne numero



de
ligne dans une requete:
*****
Public Function ajout(intNo As Integer) As Integer

Static Cpt
Cpt = Cpt + intNo
ajout = Cpt
End Function
******

Dans ma requete, j'ai cree une requete avec une
colonne : NoLigne:



Ajout(Compte([Unchamp]))
Cette requete est en regroupement avec le nouveau
champ en expression




Quand je la lance pas de problème, mais si je la
relance une deuxième



fois,
il ne me met pas le compteur à zero.

Comment puis-je initialiser à chaque démarrage?


Merci de vos idees








.




.




.