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 :

Problème de conversion [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Mai 2013
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2013
    Messages : 9
    Par défaut Problème de conversion
    Bonjour tout le monde,

    Je vous explique mon petit problème, alors j'ai une macro qui me récupère des points de courbes qui sont dans des fichiers textes que j'ai auparavant exporté.
    Tout ce passe bien, jusqu'au moment ou j'ai un problème de type je pense car j'utilise aussi un pas de fréquence qui correspond aux points de ma courbe.

    Voici 3 lignes de mon code :

    Range("C10") contient 1,25

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim PasDeFreq As Single
    PasDeFreq = Range("C10").Value
    ActiveCell.FormulaR1C1 = "=R[-1]C+" & PasDeFreq
    Mon problème c'est que lorsque j’exécute mon code, la dernière ligne bloque, il ne fait pas l'addition car je pense qu'il n'aime pas "1,25" mais qu'il préfère "1.25" (avec un point). Donc quand dans ma liste déroulante je remplace par "1.25" cette fois c'est le "PasDeFreq = Range("C10").Value" qui bug car il ne le considère plus comme une valeur.
    Et lorsque je mets Dim PasDeFreq As String cela ne fonctionne pas non plus...

    Je ne sais pas quoi faire, je ne veux pas toucher au paramètres du logiciel pour remplacer les points pas des virgules donc je suis perdu... J'espère que vous avez réussi à comprendre mon problème et que vous pourrez m'aider

  2. #2
    Invité
    Invité(e)
    Par défaut Bonjour, test ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim PasDeFreq As Single
    PasDeFreq = Range("C10").Value
    ActiveCell.FormulaR1C1 = "=R[-1]C+" & CDbl(PasDeFreq)

  3. #3
    Membre du Club
    Inscrit en
    Mai 2013
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2013
    Messages : 9
    Par défaut Réponse
    Tout d'abord merci pour ta réponse rapide, mais malheureusement le problème reste inchangé

  4. #4
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    sub Test()
    Dim PasDeFreq As Single
    PasDeFreq = Range("C10").Value
    ActiveCell.FormulaR1C1 = "=R[-1]C+" & ConverNumerique(PasDeFreq)
    end sub
     
    Function ConverNumerique(v) As Double
    Dim n As String
     
    n = Replace("" & v, ",", ".")
    If IsNumeric(n) = True Then ConverNumerique = n: Exit Function
    n = Replace("" & n, ".", ",")
    If IsNumeric(n) = True Then ConverNumerique = n: Exit Function
    End Function

  5. #5
    Membre du Club
    Inscrit en
    Mai 2013
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2013
    Messages : 9
    Par défaut
    Merci encore une fois pour cette réponse.

    Je ne suis pas très fort en VBA mais j'ai copié votre code et ça ne fonctionne toujours pas. Juste pour en être certain, je n'ai pas besoin de remplacer le "v" de ConverNumerique(v) par PasDeFreq ou autre chose ?

    Sinon si je n'ai rien à changer dans le code, je l'ai testé avec "1,25" et le code bloque encore à la ligne "
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.FormulaR1C1 = "=R[-1]C+" & ConverNumerique(PasDeFreq)
    " (Erreur définie par l'application ou par l'objet).

    Et j'ai aussi essayé avec "1.25" et le code bloc à la ligne "
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PasDeFreq = Range("C10").Value
    " (Incompatibilité de type)

    Cela ne fonctionne toujours pas

  6. #6
    Invité
    Invité(e)
    Par défaut
    si je fait ça j'ai colonne.active + 2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.FormulaR1C1 = "=R[-1]C+" & 2
    si je fais ça j'ai valeur.vative+2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.FormulaR1C1 = "=R[-1]+" & 2
    ce ne serait pas ça l'erreur?

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

Discussions similaires

  1. problème de conversion de dimension dans BUSINESS OBJECT
    Par greatmaster1971 dans le forum Deski
    Réponses: 4
    Dernier message: 28/04/2014, 13h15
  2. - [CAST ou CONVERT] Problème de conversion de date
    Par Boublou dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 06/07/2004, 14h31
  3. Problème de conversion 3DS->.X
    Par JBernn dans le forum DirectX
    Réponses: 5
    Dernier message: 08/04/2004, 19h08
  4. Problème de conversion unicode
    Par djmalo dans le forum C
    Réponses: 5
    Dernier message: 09/03/2004, 11h48
  5. Réponses: 11
    Dernier message: 02/09/2003, 14h20

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