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 :

VBA changer de format d'une cellule [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 9
    Points : 5
    Points
    5
    Par défaut VBA changer de format d'une cellule
    Bonjour,

    J'aurais aimé savoir comment changer le format d'une de mes cellules, je m'explique:

    j'ai un fichier pleins de données, sur lequel je viens les recopier dans mon programme vba qui me permet de les analyser.

    sauf que mes données brut qui arrivent sont sous la forme:

    54745; 50

    et moi j'aurai aimé avoir quelquechose sous la forme 50,54745

    Comme on peu le voir les chiffres décimaux s'affichent avant mon nombre entier et il y a un nombre entier ensuite, je n'arrive pas à changer cela.
    j'ai plusieurs colonnes (9) avec des milliers de lignes, c'est pourquoi j'ai besoin de trouver une solution pour que cela se fasse automatiquement.

  2. #2
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut

    Bonjour,

    via une p'tite fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Function ConversionFormatAlaNoix#(S)
        SP = Split(S, ";")
        If UBound(SP) = 1 Then ConversionFormatAlaNoix = Val(Trim(SP(1)) & "." & Trim(SP(0)))
    End Function
     
     
    Sub Demo()
        MsgBox ConversionFormatAlaNoix("54745; 50")
    End Sub
    _______________ ____________________________________ ______________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Merci d'avoir répondu si rapidement, (regarde j'ai commenté mon code où j'ai des problèmes).

    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
     
    For mi = 1 To 10000
            Workbooks((nomdelacq) & ".csv").Activate
            'Cells(6 + i, 3).Value = joey
            'ici je mets la valeur que j'ai récupéré (ici manuellement)
            joey = ("54745; 50")
            'je fais la conversion (qui ne marche pas)
            ConversionFormatAlaNoix (joey)
            'Range("C7:C10000").Select
            selection.Copy
            Windows("analyse.xlsm").Activate
            Sheets("Donnees").Select
            Range("C6").Value = joey
            'la valeur que j'ai dans joey n'es finalement pas convertie...:(
        Next

  4. #4
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut

    Normal car tu n'as pas fait de conversion, enfin si mais dans le vide
    puis tu affectes à la cellule la valeur d'origine donc non convertie ‼

    Il faut affecter à la cellule le résultat de la conversion, ligne n° 13 : [C6].Value = ConversionFormatAlaNoix(joey)

    Ensuite supprimer les lignes n°8 & 10 …

    __________________________________________________________________________________________
    Il n'y a pas que les aigles qui atteignent les sommets, les escargots aussi mais ils en bavent !

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Je te remercie. cela fonctionne très bien.

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

Discussions similaires

  1. Changer le format d'une cellule excel
    Par SonnyFab dans le forum ASP.NET
    Réponses: 6
    Dernier message: 09/09/2010, 14h27
  2. Réponses: 1
    Dernier message: 19/04/2008, 22h39
  3. [VBA-E]copier le format d'une cellule
    Par fabrice44 dans le forum Général VBA
    Réponses: 6
    Dernier message: 09/05/2007, 12h03
  4. [VBA-E] vérifier le format d'une cellule
    Par jouf dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/06/2006, 20h51
  5. [VBA-E]changer le format d'une cellule dans un spreadsheet
    Par delamarque dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 13/02/2006, 11h12

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