Format decimal

Résolu
Zonteomer74 -  
Zonteo Messages postés 104 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'ai une autre préoccupation.
J'ai conçu grâce à vous sous access, un petit programme ou logiciel de gestion des évaluations au primaire.
Voici mon soucis
Lorsque j'installe le logiciel dans un autre ordinateur je suis obligé d'aller dans le panneau de configuration puis entrer dans modifier le format de nombre de l'ordinateur pour changer le Symbole décimal ou le séparateur de liste, sinon les champs contenant les moyennes et les rangs affichent Erreur.
Je fais cet exercice à chaque fois que je change d'ordinateur.
J'ai inséré dans un module ce code que voici :

Function DecimalSep() As String
DecimalSep = Mid$(1 / 2, 2, 1)
End Function

Function NumberUS(ByVal varValue As Variant) As String
NumberUS = Replace(Str(varValue), DecimalSep(), ".")
End Function

Mais malgré ce code je suis obligé de faire le même exercice à chaque fois que je change d'ordinateur.
Alors que faire pour éviter à chaque fois de modifier le symbole décimal du nouvel ordinateur dans lequel j'installe le logiciel?
Espérant recevoir une réponse, recevez mes sincères remerciements pour les réponses précédentes qui m'ont beaucoup aidé ainsi que ma très haute considération


A voir également:

4 réponses

castours
 
bonjour
tu peux créer le format du champ numerique dans ces propriétés lors de sa creation
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, quel est le type des champs numériques dans tes tables? (les champs utilisés dans les formules calculant les moyennes et les rangs)
0
zonteomer74 Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   2
 
Ok voici quelques détails
Les deux champs sont chacun calculés à partir de deux autres champs TOTAL dont le type de résultat est : réel double et MOY1 (MOYENNE 1) dont le type de resultat est : Decimal.
Voici ce que j'ai fais
MOYENNE (MOY1) : [TOTAL]/8.5
Rang: CpteDom("*";"[R_EVA1]";"[MOY1]>" & [MOY1])+1
Merci
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > zonteomer74 Messages postés 29 Date d'inscription   Statut Membre Dernière intervention  
 
pourrais-tu partager ton fichier?
0
zonteomer74 Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   2
 
Je sais pas comment partager le fichier parce que j'ai essayé la dernière fois sans réussir.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > zonteomer74 Messages postés 29 Date d'inscription   Statut Membre Dernière intervention  
 
eh bien, tu peux par exemple le partager via https://www.cjoint.com/
et ensuite publier le lien dans le forum
0
zonteomer74 Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   2
 
Ok je lai fais finalement jai réussi je crois
.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
c'était une bonne idée d'ajouter du code dans un module, et il faut l'utiliser.
exemple:
=DCount("*";"[R_EVA1]";"[MOY1]>" & NumberUS([MOY1]))+1


private Function DecimalSep() As String 
DecimalSep = Mid$(1 / 2, 2, 1) 
End Function 

Function NumberUS(ByVal varValue As Variant) As String 
NumberUS = Replace(Str(varValue), DecimalSep(), ".") 
End Function
0
zonteomer74 Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   2
 
=DCount("*";"[R_EVA1]";"[MOY1]>" & NumberUS([MOY1]))+1
ou
=CpteDom("*";"[R_EVA1]";"[MOY1]>" &NumberUS( [MOY1]))+1

J'avais une fois utilisée cette formule. Mais à chaque fois il y a une boite de dialogue qui s'affiche dans laquelle s'est écrit ceci:
<<L'expression contient un nom ambigu.Vérifiez que chaque nom de l'expression fait référence à un seul objet>>
Alors elle signal NumberUS comme l’élément posant problème
Donc je me suis passé de NumberUS et la formule fonctionne.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > zonteomer74 Messages postés 29 Date d'inscription   Statut Membre Dernière intervention  
 
tu avais probablement déclaré deux fois la fonction NumberUS, d'où l’ambiguïté.
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
autre possibilité:
=DCount("*";"[R_EVA1]";"round(1000*[MOY1],0)> " & Round(1000*[MOY1];0))+1
0
zonteomer74 Messages postés 29 Date d'inscription   Statut Membre Dernière intervention   2
 
Ok. Je vais le tester
0
Zonteo Messages postés 104 Date d'inscription   Statut Membre Dernière intervention   1
 
La formule fonctionne à merveille. J'ai changé les formats de nombre dans panneau de configuration et ça marche.
Merci.
0