OVH Cloud OVH Cloud

symbolemonetaire pour champs calculés

10 réponses
Avatar
jfd
Bonsoir
Je récupère le format monétaire régional avec la fonction de Pierre
http://www.3stone.be/access/articles.php?lng=fr&pg=75
C’est ok pour les champs monétaire venant des tables, mais je ne comprends
pas comment l’adapter aussi sur un champ calculé ?
Merci par avance de vos conseils.
jfd

10 réponses

Avatar
3stone
Salut,

"jfd"
| Je récupère le format monétaire régional avec la fonction de Pierre
| http://www.3stone.be/access/articles.php?lng=fr&pgu
| C’est ok pour les champs monétaire venant des tables, mais je ne comprends
| pas comment l’adapter aussi sur un champ calculé ?


??

Le début le dit bien :
Lecture des paramètres régionaux.

Cela sert donc à connaître ces fameux paramètres
et le cas échéant, d'y adapter tes traitements...


Dans ta base, tu manipule des valeurs numériques.
Et il faut évidement une convention sur les unités utilisées.
Pas question que l'utilisateur saisisse des $ si tu attends de zoros.

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
jfd
Bonsoir Pierre et encore une fois merci de ta réponse
Depuis février (post Sam 11 fév 2006 19:02) j’utilise une fonction envoyée
par Gilbert pour lire le format monétaire. Un grand merci pour sa patience.

Avec sur ouverture de mes formulaires ce code

Private Sub Form_Open(Cancel As Integer)
Dim symbole As String
symbole = SymboleMonetaireRegional
Me.Texte369.Format = symbole & " #,00;-" & symbole & " #,00"

End Sub
Cela marche bien sauf pour certains formats monétaires spéciaux, exemples :
₩123,456,789 COREE
¥123,456,789 JAPON
S/. 123,456,789.00 PEROU
123.456.789,00 kr. ISLANDE
Et plus près de nous le franc Suisse SFr. 123'456'789.00

Donc suite à une de mes visites sur ton site, j’ai voulu essayer de nouveau
mais je cale… .Je cherche donc à trouver une solution pour l’affichage de ces
formats spécifiques sur des champs calculés.
Merci à tous ceux qui prennent le temps et qui nous aident à progresser.
Bonne fin de soirée.
jfd



Salut,

"jfd"
| Je récupère le format monétaire régional avec la fonction de Pierre
| http://www.3stone.be/access/articles.php?lng=fr&pgu
| C’est ok pour les champs monétaire venant des tables, mais je ne comprends
| pas comment l’adapter aussi sur un champ calculé ?


??

Le début le dit bien :
Lecture des paramètres régionaux.

Cela sert donc à connaître ces fameux paramètres
et le cas échéant, d'y adapter tes traitements...


Dans ta base, tu manipule des valeurs numériques.
Et il faut évidement une convention sur les unités utilisées.
Pas question que l'utilisateur saisisse des $ si tu attends de zoros.

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/






Avatar
3stone
Salut,
"jfd"
| Private Sub Form_Open(Cancel As Integer)
| Dim symbole As String
| symbole = SymboleMonetaireRegional
| Me.Texte369.Format = symbole & " #,00;-" & symbole & " #,00"



La variable symbole contient elle bien le bon... symbole ?



| End Sub
| Cela marche bien sauf pour certains formats monétaires spéciaux, exemples :
| ₩123,456,789 COREE
| ¥123,456,789 JAPON
| S/. 123,456,789.00 PEROU
| 123.456.789,00 kr. ISLANDE
| Et plus près de nous le franc Suisse SFr. 123'456'789.00

As tu essayé d'utiliser la fonction SymboleMonetaireISO() ?

Et pour le formatage des valeurs, tu as les "separator" à lire...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
3stone
Salut,

"jfd"
[...]
| Me.Texte369.Format = symbole & "*.0;- " & symbole & "*.0;- "


|
| Mêmes problèmes avec symbole ISO
| affichage du symbole seul ok
| Symbol = SymboleMonetaireISO()
| Texte22 = Symbol ( résultat KRW, OK)
| Mais dès qu’il y a un chiffre l’affichage n’est plus correct
| Résultat, style pour ISO KR7#,00
| Résultat, style pour Regional *0,00
| Et toujours sans problème pour l’euro ou £ ou $.


Ce que je ne comprends pas, c'est que, il me semble, tu récupère bien
le symbole (qui est un string, je rappelle) et que tu n'arrive pas à le concaténer
avec le reste de l'expression qui forme la commande Format()

Pourquoi le "*" dans le format ?

Moi, je vois plutôt quelque chose comme ceci, par exemple :

=>>> si symblole = "€"

Me.TextBox.Format = symbole & "# 000.00"

à condition bien sûr que le signe retourné (le symbole) existe bien
dans le jeux de caractères utilisé...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
jfd
Bonjour Pierre
Pas plus de succès
Pour l’* cela me permet d’avoir un affichage « $..........3,50 » au lieu de
« $3,50 » ce que je trouve plus lisible.
Encore une question, y a t il un moyen pour forcer ce champs calculé
problématique à afficher selon le format défini dans le champ Y, qui lui ne
pose pas de problème ?


Résultats avec le Franc Suisse, suivant les formats utilisés( décimales auto)
59Fr.#,00 pour « Me.Texte369.Format = symbole & " #,00;-" & symbole & "
#,00" »
€03,39 (décimales2)


59Fr.#,000.00 pour « Me.Texte369.Format = symbole & "# 000.00" »
€003,39

59Fr………..0 pour « symbole & "*.0;- " & symbole & "*.0;- " »
€………3,39
Merci à toi et bonne journée



Salut,

"jfd"
[...]
| Me.Texte369.Format = symbole & "*.0;- " & symbole & "*.0;- "


|
| Mêmes problèmes avec symbole ISO
| affichage du symbole seul ok
| Symbol = SymboleMonetaireISO()
| Texte22 = Symbol ( résultat KRW, OK)
| Mais dès qu’il y a un chiffre l’affichage n’est plus correct
| Résultat, style pour ISO KR7#,00
| Résultat, style pour Regional *0,00
| Et toujours sans problème pour l’euro ou £ ou $.


Ce que je ne comprends pas, c'est que, il me semble, tu récupère bien
le symbole (qui est un string, je rappelle) et que tu n'arrive pas à le concaténer
avec le reste de l'expression qui forme la commande Format()

Pourquoi le "*" dans le format ?

Moi, je vois plutôt quelque chose comme ceci, par exemple :

=>>> si symblole = "€"

Me.TextBox.Format = symbole & "# 000.00"

à condition bien sûr que le signe retourné (le symbole) existe bien
dans le jeux de caractères utilisé...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
3stone
Salut,

"jfd"
| Encore une question, y a t il un moyen pour forcer ce champs calculé
| problématique à afficher selon le format défini dans le champ Y, qui lui ne
| pose pas de problème ?

? pas compris...


| Résultats avec le Franc Suisse, suivant les formats utilisés( décimales auto)
| 59Fr.#,00 pour « Me.Texte369.Format = symbole & " #,00;-" & symbole & "
| #,00" »
| €03,39 (décimales2)


si Me!TxtBox.Format = symbole & "*.#.00"

ne fonctionne pas, je ne vois pas...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
jfd
Bonjour Pierre

Me!TxtBox.Format = symbole & "*.#.00"

ok sur plein de monnaies mais pas sur les formats spéciaux et pas de
problème dans le jeux de caractères utilisé, sur les champs venant des tables
l’affichage est ok.

| Encore une question, y a t il un moyen pour forcer ce champs calculé
| Problématique à afficher selon le format défini dans le champ Y, qui lui ne
| pose pas de problème ?

|? pas compris...

Dans Excel si tu prends une cellule A format monétaire et que tu la
multiplie par un chiffre B sans format, cellule C le résultat est directement
en affichage monétaire comme A….Est il possible de faire qq chose comme cela
dans Access?

Bonne soirée et merci bien.



Salut,

"jfd"
| Encore une question, y a t il un moyen pour forcer ce champs calculé
| problématique à afficher selon le format défini dans le champ Y, qui lui ne
| pose pas de problème ?

? pas compris...


| Résultats avec le Franc Suisse, suivant les formats utilisés( décimales auto)
| 59Fr.#,00 pour « Me.Texte369.Format = symbole & " #,00;-" & symbole & "
| #,00" »
| €03,39 (décimales2)


si Me!TxtBox.Format = symbole & "*.#.00"

ne fonctionne pas, je ne vois pas...

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
3stone
Salut,

"jfd"
| Me!TxtBox.Format = symbole & "*.#.00"
|
| ok sur plein de monnaies mais pas sur les formats spéciaux et pas de
| problème dans le jeux de caractères utilisé, sur les champs venant des tables
| l’affichage est ok.


Surprenant que le format ne soit pas gardé, à condition que la zone de texte
ait bien le champ comme source (et non un champ calculé)


|| Encore une question, y a t il un moyen pour forcer ce champs calculé
|| Problématique à afficher selon le format défini dans le champ Y, qui lui ne
|| pose pas de problème ?
|
||? pas compris...
|
| Dans Excel si tu prends une cellule A format monétaire et que tu la
| multiplie par un chiffre B sans format, cellule C le résultat est directement
| en affichage monétaire comme A….Est il possible de faire qq chose comme cela
| dans Access?

Excel est orienté celulle...
Les données et l'interface (et le format) y sont intimement lié.

Dans Access, un format défini au niveau du champ perdure tel quel,
à condition de le faire simplement "transiter" par une requête, textbox...
Par contre un textbox n'hérite pas automatiquement le format d'une des
composantes d'un champ calculé.
Le format d'affichage d'un textbox étant indépendant du champ,
cela explique que - dire d'une date quelle est "sauvée" dans tel format
car affichée ainsi dans le textbox, ne veut strictement rien dire. Une date
étant toujours sauvée en tant que valeur numérique (avec décimale).


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
3stone
Salut,

"jfd"
| « Surprenant que le format ne soit pas gardé, à condition que la zone de
| texte ait bien le champ comme source (et non un champ calculé) »
| Euh…..mon champ est juste calculé sur le formulaire
| Exemple
| Prix d’achat monétaire * quantité / nombre de pers


dans ce cas, pourquoi ne pas attribuer le format à cette zone de texte ?


| Excuse mon ignorance, alors est ce que la solution serait de cacher ce champ
| calculé et d’inscrire le résultat dans un champ table monétaire...

Parce qu'il n'est pas prudent d'inscrire des résultats dans une table.
C'est généralement source d'erreur, sauf pour "geler" une valeur.


ps: Si tu as tant de monaie, tu pourrais alimenter mon compte en banque.
pps: J'accepte les monnaies de toute origine !

MDR

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
jfd
Bonjour Pierre
Mon compte en banque étant bien ridicule par rapport à ma reconnaissance, je
préfère te donner celle-ci :-)
Et en attendant de trouver une solution fiable………je laisse ce problème de
coté d’autant qu’il en rejoint un autre évoqué le 28 11 sur un post de
dams27_56 concernant des problèmes de langues.
Bonne journée et merci bien
jfd


Salut,

"jfd"
| « Surprenant que le format ne soit pas gardé, à condition que la zone de
| texte ait bien le champ comme source (et non un champ calculé) »
| Euh…..mon champ est juste calculé sur le formulaire
| Exemple
| Prix d’achat monétaire * quantité / nombre de pers


dans ce cas, pourquoi ne pas attribuer le format à cette zone de texte ?


| Excuse mon ignorance, alors est ce que la solution serait de cacher ce champ
| calculé et d’inscrire le résultat dans un champ table monétaire...

Parce qu'il n'est pas prudent d'inscrire des résultats dans une table.
C'est généralement source d'erreur, sauf pour "geler" une valeur.


ps: Si tu as tant de monaie, tu pourrais alimenter mon compte en banque.
pps: J'accepte les monnaies de toute origine !

MDR

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/