IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Probleme de conversion entre . et , avec une macro excel


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 268
    Points : 98
    Points
    98
    Par défaut Probleme de conversion entre . et , avec une macro excel
    Bonjour
    J'ai un gros soucis avec une macro
    Je renter une valeur dans la cellule ew11 par l'intermediaire d'1 userform (textbox) puis je la compare a une autre valeur cellule fv10
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =si(ew11>fv10;"hors classe";"OK")
    Cette fonction marche parfaitement si ds option regionaux le s^parateur est en ,
    si le séparateur est en . elle ne fonctionne pas et marche que pour les entier
    exemple : ew11 = 1 et fv10 = 1.5 ca marche
    si ew = 1.1 et fv10=1.5 ca ne fonctionne pas
    Il est à noter que si je rentre directement à l'ouverture du fichier la valeur ds ew11 sans passer par le userform ca fonctionne et apparement c le fait de passer par la textbox qui provoque l'erreur de calcul
    Quelqu'un a une idee ????
    au secours !!!!!!!!!!!!

  2. #2
    Membre régulier
    Avatar de mortalino
    Inscrit en
    Janvier 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Janvier 2007
    Messages : 72
    Points : 116
    Points
    116
    Par défaut
    Salut,

    soit tu fais un Replace du Point vers la virgule, pour tous ce qui vient de ton userform avant insertion des données dans la feuille, soit, pour permettre le calcul, tu changes temporairement le séparateur décimal :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    ' *** A Placer dans un Module
    Dim ActualDecimalSeparator As String
    Public Sub ChangeDecimalSeparator(ByVal sDecimal As String)
        With Application
            .UseSystemSeparators = False
            ActualDecimalSeparator = .DecimalSeparator
            .DecimalSeparator = sDecimal
        End With
    End Sub
    Public Sub RestoreDecimalSeparator()
        With Application
            .UseSystemSeparators = True
            .DecimalSeparator = ActualDecimalSeparator
        End With
    End Sub
     
    ' Quand t'as besoin :
        Call ChangeDecimalSeparator(".")
        Call RestoreDecimalSeparator
    @++

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    268
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 268
    Points : 98
    Points
    98
    Par défaut
    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2000] Ouvrir un fichier avec une macro excel.
    Par salent9 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 11/05/2011, 13h51
  2. gestion de stock avec une macro excel
    Par tchiph dans le forum Conception
    Réponses: 2
    Dernier message: 18/03/2011, 08h41
  3. Réponses: 0
    Dernier message: 27/01/2011, 19h07
  4. Réponses: 3
    Dernier message: 14/05/2010, 13h30
  5. Réponses: 1
    Dernier message: 13/05/2010, 13h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo