Format decimal

Résolu
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

4 réponses

  1. Contributeur
    autre possibilité:
    =DCount("*";"[R_EVA1]";"round(1000*[MOY1],0)> " & Round(1000*[MOY1];0))+1
    1. Ok. Je vais le tester
    2. La formule fonctionne à merveille. J'ai changé les formats de nombre dans panneau de configuration et ça marche.
      Merci.
  2. Contributeur
    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
    1. =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.
    2. Contributeur
      @zonteomer74tu avais probablement déclaré deux fois la fonction NumberUS, d'où l’ambiguïté.
  3. Contributeur
    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)
    1. 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
    2. Je sais pas comment partager le fichier parce que j'ai essayé la dernière fois sans réussir.
    3. Ok je lai fais finalement jai réussi je crois
      .
  4. bonjour
    tu peux créer le format du champ numerique dans ces propriétés lors de sa creation