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 :

Une fonction Trim génère des erreurs


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Inscrit en
    Mai 2007
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 192
    Points : 116
    Points
    116
    Par défaut Une fonction Trim génère des erreurs
    Bonjour tout le monde,

    La boucle suivante est censée faire un nettoyage des éventuels espaces.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Sub boucle_nettoyage()
     
    Dim c, tbl As Range
    ActiveSheet.[A16].Select
    Set tbl = ActiveCell.CurrentRegion
            tbl.Offset(1, 0).Resize(tbl.Rows.Count - 1, _
            tbl.Columns.Count).Activate
    For Each c In tbl
            If Not IsEmpty(c) Then
            c.Value = Trim(c.Value)
            End If
    Next c
    End Sub
    Toutefois, sur toutes les cellules contenant des valeurs numériques, celles qui contiennent des décimales sont transformées en format texte. Qqn sait-il pourquoi et comment je peux y remédier?

    Alex

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    1 - D'où viennent les données que tu "nettoies" ?
    2 - Quel est ton séparateur décimal ?

  3. #3
    Membre régulier
    Inscrit en
    Mai 2007
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 192
    Points : 116
    Points
    116
    Par défaut
    Salut Ouskel,

    1. Les données arrivent en .xls je ne sais pas si elles ont été au préalable exportées.
    2. Le séparateur décimal est le point (celui sur le clavier numérique) même si une virgule apparaît. J'ai regardé les formats des cellules c'est du nombre partout donc à mon avis ça vient pas du sépareteur.

    Je viens de fouiller sur les tutos de Silkyroad et j'ai trouvé une autre syntaxe qui elle a l'air de fonctionner correctement:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    c = Application.WorksheetFunction.Trim(c)
    Toutefois je ne vois ce qu'elle a la mienne!

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    As-tu essayé
    ou
    ? Parce que je ne vois pas non plus pourquoi ça pose pb
    Mais je testerais de préférence la première "version"

  5. #5
    Membre régulier
    Inscrit en
    Mai 2007
    Messages
    192
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 192
    Points : 116
    Points
    116
    Par défaut
    Effectivement la première "version" fonctionne correctement! ça doit être le c.value qui pose problème.
    Merci Ouskel!

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

Discussions similaires

  1. Une fonction qui génère des matrices aléatoires
    Par deblo16 dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 26/10/2012, 01h31
  2. [VBA][03] Erreur dans une fonction qui vide des tables
    Par NiKoTiNe dans le forum VBA Access
    Réponses: 3
    Dernier message: 20/04/2007, 14h13
  3. Réponses: 1
    Dernier message: 07/06/2006, 18h18
  4. Réponses: 5
    Dernier message: 28/04/2006, 14h40
  5. La librairie libsx génère des erreurs
    Par fofovi72 dans le forum C
    Réponses: 2
    Dernier message: 24/01/2006, 20h21

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