OVH Cloud OVH Cloud

Détail bon d'achat

12 réponses
Avatar
mharroch
Bonjour à tous
J'ai des montants à offrir aux clients avec des bons d'achats et je
voudrai le nombre de bons par tranche pour chaque montant et chaque
client.
J'ai une table "Clients" avec des montants à offrir et une autre table
"Tranche" avec les montants de chaque tranche, ex : 100 - 50 - 10
Je m'explique: pour un montant de 1260 - c'est 100*12 - 50*1 et 10*1.
Quelqu'un pourra me fournir la formule magique pour résoudre ce
problème ??
Merci pour votre aide d'avance

10 réponses

1 2
Avatar
3stone
Salut,

"marc"
J'ai des montants à offrir aux clients avec des bons d'achats et je
voudrai le nombre de bons par tranche pour chaque montant et chaque
client.
J'ai une table "Clients" avec des montants à offrir et une autre table
"Tranche" avec les montants de chaque tranche, ex : 100 - 50 - 10
Je m'explique: pour un montant de 1260 - c'est 100*12 - 50*1 et 10*1.
Quelqu'un pourra me fournir la formule magique pour résoudre ce
problème ??




Regarde la fonction "Mod" (modulo)



--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------

Avatar
Zazi
Tu combines la fonction (division entière) et la fonction MOD (modulo)
et c'est dans la boite :

Dim total As Double
total = 1260

Dim c100 As Integer
Dim c50 As Integer
Dim c10 As Integer

c100 = total 100
total = total Mod 100
c50 = total 50
total = total Mod 50
c10 = total 10
total = total Mod 10

Debug.Print c100, c50, c10

=>
12 1 1

"marc" a écrit dans le message de
news:
Bonjour à tous
J'ai des montants à offrir aux clients avec des bons d'achats et je
voudrai le nombre de bons par tranche pour chaque montant et chaque
client.
J'ai une table "Clients" avec des montants à offrir et une autre table
"Tranche" avec les montants de chaque tranche, ex : 100 - 50 - 10
Je m'explique: pour un montant de 1260 - c'est 100*12 - 50*1 et 10*1.
Quelqu'un pourra me fournir la formule magique pour résoudre ce
problème ??
Merci pour votre aide d'avance


Avatar
Emmanuel Feller
Tu t'en sors par des analyses croisés. J'avais du mal à rédiger mon message
pour t'expliquer alors j'ai fait un exemple que je t'envoie par mail.

Je le tiens évidemment disponible aux autres ;))
Emmanuel


"marc" a écrit dans le message de
news:
Bonjour à tous
J'ai des montants à offrir aux clients avec des bons d'achats et je
voudrai le nombre de bons par tranche pour chaque montant et chaque
client.
J'ai une table "Clients" avec des montants à offrir et une autre table
"Tranche" avec les montants de chaque tranche, ex : 100 - 50 - 10
Je m'explique: pour un montant de 1260 - c'est 100*12 - 50*1 et 10*1.
Quelqu'un pourra me fournir la formule magique pour résoudre ce
problème ??
Merci pour votre aide d'avance


Avatar
Yann
Salut Manu,
Je suis intéressé... Retires 1 o dans mon adresse courriel

Bye
Yann

-----Message d'origine-----
Tu t'en sors par des analyses croisés. J'avais du mal à
rédiger mon message

pour t'expliquer alors j'ai fait un exemple que je
t'envoie par mail.


Je le tiens évidemment disponible aux autres ;))
Emmanuel


"marc" a écrit dans le message
de

news:
Bonjour à tous
J'ai des montants à offrir aux clients avec des bons
d'achats et je


voudrai le nombre de bons par tranche pour chaque
montant et chaque


client.
J'ai une table "Clients" avec des montants à offrir et
une autre table


"Tranche" avec les montants de chaque tranche, ex :
100 - 50 - 10


Je m'explique: pour un montant de 1260 - c'est 100*12 -
50*1 et 10*1.


Quelqu'un pourra me fournir la formule magique pour
résoudre ce


problème ??
Merci pour votre aide d'avance



.




Avatar
Eric
Bonjour Emmanuel

Moi aussi, je serai preneur.
Merci d'avance.

(Adresse : retirer les 2Z)

A+
Eric

"Emmanuel Feller" écrivait
news:41485d67$0$12041$:

Tu t'en sors par des analyses croisés. J'avais du mal à rédiger mon
message pour t'expliquer alors j'ai fait un exemple que je t'envoie
par mail.

Je le tiens évidemment disponible aux autres ;))
Emmanuel




Avatar
Eric
Bonjour Marc,

Fun, fun, fun ...

Tu as déjà recu beaucoup de pistes pour résoudre ton problème mais ayant
eu hier soir un peu de temps, je me suis amusé à te coder une fonction en
VBA qui te permet de trouver, pour un montant à ventiler en bons d'achat,
le nombre de bons en fonction de leur valeur. Cette fonction peut aussi
bien être utilisée dans une requête ou formulaire. Le nombre de bons (en
terme de valeur) dans ta table Tranche peut être quelconque et non limité
à 3 comme dans ton exemple. La seule contrainte est que les bons dans
cette table doivent être saisis dans l'ordre décroissant de leur valeur,
sinon il te faudra utiliser, à la place de la table, une requête
respectant cette ordre.

Ainsi:
- si le montant à ventiler est de 1 260, la fonction retourne :

Le client bénéficie de :
-> 1 bon de 1 000,00 €
-> 2 bons de 100,00 €
-> 1 bon de 50,00 €
-> 1 bon de 10,00 €

- si le montant à ventiler est de 4 875, la fonction retourne :

Le client bénéficie de :
-> 2 bons de 2 000,00 €
-> 8 bons de 100,00 €
-> 1 bon de 50,00 €
-> 2 bons de 10,00 €

(Dans la table Tarif, bons d'une valeur de : 2000, 1000, 100, 500 et 10).

Je tiens à ta disposition une base avec les tables, une requête affichant
les bons à donner à chaque client (pour tous les clients) et un
formulaire affichant les mêmes infos.
Y compris le module contenant la fonction.

Les autres membres du groupe, intéressés par la base, peuvent, bien
évidemment, eux aussi, en bénéficier en fichier zippé.

A+
Eric




(marc) écrivait news:8cd67ab.0409150547.5af271e4
@posting.google.com:

Bonjour à tous
J'ai des montants à offrir aux clients avec des bons d'achats et je
voudrai le nombre de bons par tranche pour chaque montant et chaque
client.
J'ai une table "Clients" avec des montants à offrir et une autre table
"Tranche" avec les montants de chaque tranche, ex : 100 - 50 - 10
Je m'explique: pour un montant de 1260 - c'est 100*12 - 50*1 et 10*1.
Quelqu'un pourra me fournir la formule magique pour résoudre ce
problème ??
Merci pour votre aide d'avance



Avatar
Pierre CFI [mvp]
ah, on ne peux pas rester indéferent face à un travailleur
envoie moi ta copie (que je la revende :o))
enléve les xxx_ à mon mél

--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
"Eric" a écrit dans le message de news:
Bonjour Marc,

Fun, fun, fun ...

Tu as déjà recu beaucoup de pistes pour résoudre ton problème mais ayant
eu hier soir un peu de temps, je me suis amusé à te coder une fonction en
VBA qui te permet de trouver, pour un montant à ventiler en bons d'achat,
le nombre de bons en fonction de leur valeur. Cette fonction peut aussi
bien être utilisée dans une requête ou formulaire. Le nombre de bons (en
terme de valeur) dans ta table Tranche peut être quelconque et non limité
à 3 comme dans ton exemple. La seule contrainte est que les bons dans
cette table doivent être saisis dans l'ordre décroissant de leur valeur,
sinon il te faudra utiliser, à la place de la table, une requête
respectant cette ordre.

Ainsi:
- si le montant à ventiler est de 1 260, la fonction retourne :

Le client bénéficie de :
-> 1 bon de 1 000,00 ?
-> 2 bons de 100,00 ?
-> 1 bon de 50,00 ?
-> 1 bon de 10,00 ?

- si le montant à ventiler est de 4 875, la fonction retourne :

Le client bénéficie de :
-> 2 bons de 2 000,00 ?
-> 8 bons de 100,00 ?
-> 1 bon de 50,00 ?
-> 2 bons de 10,00 ?

(Dans la table Tarif, bons d'une valeur de : 2000, 1000, 100, 500 et 10).

Je tiens à ta disposition une base avec les tables, une requête affichant
les bons à donner à chaque client (pour tous les clients) et un
formulaire affichant les mêmes infos.
Y compris le module contenant la fonction.

Les autres membres du groupe, intéressés par la base, peuvent, bien
évidemment, eux aussi, en bénéficier en fichier zippé.

A+
Eric




(marc) écrivait news:8cd67ab.0409150547.5af271e4
@posting.google.com:

Bonjour à tous
J'ai des montants à offrir aux clients avec des bons d'achats et je
voudrai le nombre de bons par tranche pour chaque montant et chaque
client.
J'ai une table "Clients" avec des montants à offrir et une autre table
"Tranche" avec les montants de chaque tranche, ex : 100 - 50 - 10
Je m'explique: pour un montant de 1260 - c'est 100*12 - 50*1 et 10*1.
Quelqu'un pourra me fournir la formule magique pour résoudre ce
problème ??
Merci pour votre aide d'avance






Avatar
Eric
Bonjour Pierre,

C'est parti

A+
Eric

PS : Raymond m'a coupé l'herbe sous le pied, à propos du post
Transformation de la structure de ma bd - Urgent. J'avais déjà attaqué le
code quand j'ai vu son reply. Donc j'ai viré. Mais là, ca me faisait
plaisir d'écrire quelques lignes.

"Pierre CFI [mvp]" écrivait news:ebtYej9mEHA.608
@TK2MSFTNGP09.phx.gbl:

ah, on ne peux pas rester indéferent face à un travailleur
envoie moi ta copie (que je la revende :o))
enléve les xxx_ à mon mél



Avatar
3stone
Salut,

"Eric"
Fun, fun, fun ...

Les autres membres du groupe, intéressés par la base, peuvent, bien
évidemment, eux aussi, en bénéficier en fichier zippé.



itou... itou... on va le publier...


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------

Avatar
Yann
Salut Eric,
Je suis aussi intérressé par ta méthode car même si j'en
ai eu une hier, une nouvelle me permettra de choisir
celle qui me conviendra le mieux... Et peut-être que
chacune a ses avantages et inconvénient ;o)

Merci

Bye
Yann

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

Fun, fun, fun ...

Tu as déjà recu beaucoup de pistes pour résoudre ton
problème mais ayant

eu hier soir un peu de temps, je me suis amusé à te
coder une fonction en

VBA qui te permet de trouver, pour un montant à ventiler
en bons d'achat,

le nombre de bons en fonction de leur valeur. Cette
fonction peut aussi

bien être utilisée dans une requête ou formulaire. Le
nombre de bons (en

terme de valeur) dans ta table Tranche peut être
quelconque et non limité

à 3 comme dans ton exemple. La seule contrainte est que
les bons dans

cette table doivent être saisis dans l'ordre décroissant
de leur valeur,

sinon il te faudra utiliser, à la place de la table, une
requête

respectant cette ordre.

Ainsi:
- si le montant à ventiler est de 1 260, la fonction
retourne :


Le client bénéficie de :
-> 1 bon de 1 000,00 ?
-> 2 bons de 100,00 ?
-> 1 bon de 50,00 ?
-> 1 bon de 10,00 ?

- si le montant à ventiler est de 4 875, la fonction
retourne :


Le client bénéficie de :
-> 2 bons de 2 000,00 ?
-> 8 bons de 100,00 ?
-> 1 bon de 50,00 ?
-> 2 bons de 10,00 ?

(Dans la table Tarif, bons d'une valeur de : 2000, 1000,
100, 500 et 10).


Je tiens à ta disposition une base avec les tables, une
requête affichant

les bons à donner à chaque client (pour tous les
clients) et un

formulaire affichant les mêmes infos.
Y compris le module contenant la fonction.

Les autres membres du groupe, intéressés par la base,
peuvent, bien

évidemment, eux aussi, en bénéficier en fichier zippé.

A+
Eric




(marc) écrivait
news:8cd67ab.0409150547.5af271e4

@posting.google.com:

Bonjour à tous
J'ai des montants à offrir aux clients avec des bons
d'achats et je


voudrai le nombre de bons par tranche pour chaque
montant et chaque


client.
J'ai une table "Clients" avec des montants à offrir et
une autre table


"Tranche" avec les montants de chaque tranche, ex :
100 - 50 - 10


Je m'explique: pour un montant de 1260 - c'est 100*12 -
50*1 et 10*1.


Quelqu'un pourra me fournir la formule magique pour
résoudre ce


problème ??
Merci pour votre aide d'avance



.




1 2