OVH Cloud OVH Cloud

relevez ce défi!

10 réponses
Avatar
Flag
Bonjour =E0 tous.
J'ai un tableau comme suit:

A B C =20
Noclient Dateutilisation datevisite
123 29-juil-04 15-juin-04
123 29-juil-04 18-juin-04
123 29-juil-04 29-juil-04
123 29-juil-04 30-juil-04
123 29-juil-04 15-sept-04
100 18-juil-04 12-juil-04
100 18-juil-04 13-juil-04
100 18-juil-04 15-juil-04
100 18-juil-04 18-juil-04
100 18-juil-04 19-juil-04
100 18-juil-04 21-aout-04
350 22-juil-04 22-juil-04
350 22-juil-04 30-juil-04
... ... ...
Noclient =3D code unique =E0 chacun des clients
Date d'utilisation=3D date d'utilisation du coupon de=20
promotion.
Date visite=3D date de chacune des visites des clients.

Ce que je veux savoir: Lors de la visite que le client =E0=20
utilis=E9 son coupon (Date d'utilisation), combien de jour=20
cons=E9cutif il a visit=E9 l'=E9tablissement.
Exemple: le joueur 123 a utilis=E9 son coupon le 29 juillet=20
et est venu 2 jours (soit le 29 et le 30 juillet).

Donc ce que je veux obtenir (sur la m=EAme feuille ou dans=20
un autre onglet) c'est le tableau suivant:

Noclient Nbdejourcons=E9cutif
123 2
100 2
350 1
etc.

J'ai une base de donn=E9es de plusieurs lignes (35 000)

Merci pour votre aide tr=E8s appr=E9ci=E9!
Flag

10 réponses

Avatar
JièL Goubert
Bonjoir(c) Flag

Le 26/11/2004 19:40 vous avez écrit ceci :
J'ai une base de données de plusieurs lignes (35 000)


un TCD avec 35 000 lignes... sourire ;-)
désolé, ce n'est pas une réponse, du moins pas complète

--
JièL Marteau

Avatar
Daniel.M
Bonjour,

1.Tri sur NoClient/DateUtilisation/DateVisite
2.Une autre colonne appelée en D1 "Consécutifs"

En D2 (première ligne avec des données) : 1
En D3: =SI(ET(A3¢;B3²);SI(C3-C2=1;D2+1;SI(C3-C2=0;D2;1));1)
Copie D3 jusqu'en bas (D35000)

Puis Données/Tableau Croisé Dynamique,
avec NoClient
comptabilise les Consécutifs

Clique Droit sur le champ Consécutifs et choisir MAX.

Salutations,

Daniel M.

"Flag" wrote in message
news:9c7101c4d3e7$60a5ef10$
Bonjour à tous.
J'ai un tableau comme suit:

A B C
Noclient Dateutilisation datevisite
123 29-juil-04 15-juin-04
123 29-juil-04 18-juin-04
123 29-juil-04 29-juil-04
123 29-juil-04 30-juil-04
123 29-juil-04 15-sept-04
100 18-juil-04 12-juil-04
100 18-juil-04 13-juil-04
100 18-juil-04 15-juil-04
100 18-juil-04 18-juil-04
100 18-juil-04 19-juil-04
100 18-juil-04 21-aout-04
350 22-juil-04 22-juil-04
350 22-juil-04 30-juil-04
... ... ...
Noclient = code unique à chacun des clients
Date d'utilisation= date d'utilisation du coupon de
promotion.
Date visite= date de chacune des visites des clients.

Ce que je veux savoir: Lors de la visite que le client à
utilisé son coupon (Date d'utilisation), combien de jour
consécutif il a visité l'établissement.
Exemple: le joueur 123 a utilisé son coupon le 29 juillet
et est venu 2 jours (soit le 29 et le 30 juillet).

Donc ce que je veux obtenir (sur la même feuille ou dans
un autre onglet) c'est le tableau suivant:

Noclient Nbdejourconsécutif
123 2
100 2
350 1
etc.

J'ai une base de données de plusieurs lignes (35 000)

Merci pour votre aide très apprécié!
Flag
Avatar
Flag
Vous m'avez donné une bonne piste et ça fonctionne!

Merci

-----Message d'origine-----
Bonjour,

1.Tri sur NoClient/DateUtilisation/DateVisite
2.Une autre colonne appelée en D1 "Consécutifs"

En D2 (première ligne avec des données) : 1
En D3: =SI(ET(A3¢;B3²);SI(C3-C2=1;D2+1;SI(C3-
C2=0;D2;1));1)

Copie D3 jusqu'en bas (D35000)

Puis Données/Tableau Croisé Dynamique,
avec NoClient
comptabilise les Consécutifs

Clique Droit sur le champ Consécutifs et choisir MAX.

Salutations,

Daniel M.

"Flag" wrote in
message

news:9c7101c4d3e7$60a5ef10$
Bonjour à tous.
J'ai un tableau comme suit:

A B C
Noclient Dateutilisation datevisite
123 29-juil-04 15-juin-04
123 29-juil-04 18-juin-04
123 29-juil-04 29-juil-04
123 29-juil-04 30-juil-04
123 29-juil-04 15-sept-04
100 18-juil-04 12-juil-04
100 18-juil-04 13-juil-04
100 18-juil-04 15-juil-04
100 18-juil-04 18-juil-04
100 18-juil-04 19-juil-04
100 18-juil-04 21-aout-04
350 22-juil-04 22-juil-04
350 22-juil-04 30-juil-04
.... ... ...
Noclient = code unique à chacun des clients
Date d'utilisation= date d'utilisation du coupon de
promotion.
Date visite= date de chacune des visites des clients.

Ce que je veux savoir: Lors de la visite que le client à
utilisé son coupon (Date d'utilisation), combien de jour
consécutif il a visité l'établissement.
Exemple: le joueur 123 a utilisé son coupon le 29 juillet
et est venu 2 jours (soit le 29 et le 30 juillet).

Donc ce que je veux obtenir (sur la même feuille ou dans
un autre onglet) c'est le tableau suivant:

Noclient Nbdejourconsécutif
123 2
100 2
350 1
etc.

J'ai une base de données de plusieurs lignes (35 000)

Merci pour votre aide très apprécié!
Flag


.



Avatar
docm
Bonsoir

Cette formule semble bien fonctionner :
En D3 et suivante:
=SI(C3-C2<>1;SI(C3³;1;);SI(D2>0;D2+1;))

Amicalement.

"Flag" wrote in message
news:9c7101c4d3e7$60a5ef10$
Bonjour à tous.
J'ai un tableau comme suit:

A B C
Noclient Dateutilisation datevisite
123 29-juil-04 15-juin-04
123 29-juil-04 18-juin-04
123 29-juil-04 29-juil-04
123 29-juil-04 30-juil-04
123 29-juil-04 15-sept-04
100 18-juil-04 12-juil-04
100 18-juil-04 13-juil-04
100 18-juil-04 15-juil-04
100 18-juil-04 18-juil-04
100 18-juil-04 19-juil-04
100 18-juil-04 21-aout-04
350 22-juil-04 22-juil-04
350 22-juil-04 30-juil-04
... ... ...
Noclient = code unique à chacun des clients
Date d'utilisation= date d'utilisation du coupon de
promotion.
Date visite= date de chacune des visites des clients.

Ce que je veux savoir: Lors de la visite que le client à
utilisé son coupon (Date d'utilisation), combien de jour
consécutif il a visité l'établissement.
Exemple: le joueur 123 a utilisé son coupon le 29 juillet
et est venu 2 jours (soit le 29 et le 30 juillet).

Donc ce que je veux obtenir (sur la même feuille ou dans
un autre onglet) c'est le tableau suivant:

Noclient Nbdejourconsécutif
123 2
100 2
350 1
etc.

J'ai une base de données de plusieurs lignes (35 000)

Merci pour votre aide très apprécié!
Flag
Avatar
Daniel.M
Bonsoir,

Elle ne tient pas compte des changements de NoClient.

123 2004-07-29 2004-07-29 1
124 2004-07-29 2004-07-30 2 ' < devrait recommencer à 1

Salutations,

Daniel M.

"docm" wrote in message
news:%
Bonsoir

Cette formule semble bien fonctionner :
En D3 et suivante:
=SI(C3-C2<>1;SI(C3³;1;);SI(D2>0;D2+1;))

Amicalement.



Avatar
docm
Bonjour
Merci.
J'ajoute donc A3<>A2 pour obtenir :
=SI(OU(C3-C2<>1;A3<>A2);SI(C3³;1;);SI(D2>0;D2+1;))


"Daniel.M" wrote in message
news:#
Bonsoir,

Elle ne tient pas compte des changements de NoClient.

123 2004-07-29 2004-07-29 1
124 2004-07-29 2004-07-30 2 ' < devrait recommencer à 1

Salutations,

Daniel M.

"docm" wrote in message
news:%
Bonsoir

Cette formule semble bien fonctionner :
En D3 et suivante:
=SI(C3-C2<>1;SI(C3³;1;);SI(D2>0;D2+1;))

Amicalement.







Avatar
Daniel.M
Salut,

=SI(OU(C3-C2<>1;A3<>A2);SI(C3³;1;);SI(D2>0;D2+1;))


Je ne comprends pas pourquoi tu testes C3 avec B3. Un coupon est défini comme un
couple NoClient/DateD'Utilisation. Pour ce coupon, il fait des visites. Les
jours consécutifs sont comptabilisés par rapport à un coupon. La question est
"Combien de jours consécutifs maximum fera un client?"

J'ai sûrement pas compris le problème comme toi car on obtient des zéro avec ta
formule (alors qu'il y a toujours au moins 1 date consécutive!).

Par ex:

123 2004-07-29 2004-07-29 1 1
124 2004-07-29 2004-07-30 0 1
124 2004-07-29 2004-07-31 0 2

La dernière colonne est celle des résultats attendus, l'avant-dernière est celle
des résultats de ta formule.

Salutations,

Daniel M.


"docm" wrote in message
news:%
Bonjour
Merci.
J'ajoute donc A3<>A2 pour obtenir :


"Daniel.M" wrote in message
news:#
Bonsoir,

Elle ne tient pas compte des changements de NoClient.

123 2004-07-29 2004-07-29 1
124 2004-07-29 2004-07-30 2 ' < devrait recommencer à 1

Salutations,

Daniel M.

"docm" wrote in message
news:%
Bonsoir

Cette formule semble bien fonctionner :
En D3 et suivante:
=SI(C3-C2<>1;SI(C3³;1;);SI(D2>0;D2+1;))

Amicalement.











Avatar
docm
Bonsoir.

La question de Flag s'énonce comme suit:
"Ce que je veux savoir: Lors de la visite que le client à
utilisé son coupon (Date d'utilisation), combien de jour
consécutif il a visité l'établissement.
Exemple: le joueur 123 a utilisé son coupon le 29 juillet
et est venu 2 jours (soit le 29 et le 30 juillet)."

Il m'apparaît donc que les visites qui précèdent la date d'utilisation du
coupon n'intéressent pas Flag. Il veut savoir combien de jours consécutifs
le client a visité l'établissement à partir de la visite où il a utilisé le
coupon promotionel .C'est pourquoi je mets 0 pour les visites précédentes, 1
pour la visite où le coupon est utilisé (C3 = B3) et +1 pour les jours
consécutifs suivants.

Je ne vois pas pourquoi tu accordes la valeur 1 aux visites précédentes.

Salut à toi.

Docm





"Daniel.M" wrote in message
news:
Salut,

=SI(OU(C3-C2<>1;A3<>A2);SI(C3³;1;);SI(D2>0;D2+1;))


Je ne comprends pas pourquoi tu testes C3 avec B3. Un coupon est défini
comme un

couple NoClient/DateD'Utilisation. Pour ce coupon, il fait des visites.
Les

jours consécutifs sont comptabilisés par rapport à un coupon. La question
est

"Combien de jours consécutifs maximum fera un client?"

J'ai sûrement pas compris le problème comme toi car on obtient des zéro
avec ta

formule (alors qu'il y a toujours au moins 1 date consécutive!).

Par ex:

123 2004-07-29 2004-07-29 1 1
124 2004-07-29 2004-07-30 0 1
124 2004-07-29 2004-07-31 0 2

La dernière colonne est celle des résultats attendus, l'avant-dernière est
celle

des résultats de ta formule.

Salutations,

Daniel M.


"docm" wrote in message
news:%
Bonjour
Merci.
J'ajoute donc A3<>A2 pour obtenir :


"Daniel.M" wrote in message
news:#
Bonsoir,

Elle ne tient pas compte des changements de NoClient.

123 2004-07-29 2004-07-29 1
124 2004-07-29 2004-07-30 2 ' < devrait recommencer à 1

Salutations,

Daniel M.

"docm" wrote in message
news:%
Bonsoir

Cette formule semble bien fonctionner :
En D3 et suivante:
=SI(C3-C2<>1;SI(C3³;1;);SI(D2>0;D2+1;))

Amicalement.















Avatar
Daniel.M
Allo,


Il m'apparaît donc que les visites qui précèdent la date d'utilisation du
coupon n'intéressent pas Flag. Il veut savoir combien de jours consécutifs
le client a visité l'établissement à partir de la visite où il a utilisé le
coupon promotionel .


Ah, là, je comprends ce que tu cherches à faire! Tu ne comptabilises que les
jours de visites (consécutifs) qui sont supérieurs à la date d'utilisation.
Tu confirmes qu'on n'a pas initialement compris le problème de la même façon.
:-)
Si Flag repasse, il pourrait confirmer la bonne interprétation, et choisir la
bonne formule (la seule chose à changer si besoin est) pour solutionner son
problème.

Si on choisit ton interprétation, j'ai la formule suivante en D2 (car tu n'as
donné que celle pour D3:Dx):
En D2:
=--(C2>²)

Tu as quelque chose de semblable?

Salutations,

Daniel M.

Avatar
docm

Si on choisit ton interprétation, j'ai la formule suivante en D2 (car tu
n'as

donné que celle pour D3:Dx):
En D2:
=--(C2>²)

Tu as quelque chose de semblable?


Pour mon interprétation, il faudrait impérativement en D2 mettre ceci:
=SI(C2²;1;) ou encore, pour imiter le maître, =--(C2²)

Merci d'avoir relever cet autre oubli dans mon code. Celui-ci va finir par
être vraiment tout à fait fonctionnel si tu continues ainsi. :)

Saluts à toi.

Docm