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 :

Résoudre le problème de chiffre significatif excel [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut Résoudre le problème de chiffre significatif excel
    Salut le forum

    J'ai saisis des valeur dans des cellules.
    Je constate que lorsque je saisis plus de 15 chiffre dans une cellule, le format de la valeur entrée change.
    Le dernier ou 16 chiffre devient 0. si par exemple je saisis 6012891103024464, il devient 6,01289E+15 et dans la barre des formule je lis 6012891103024464.
    quelqu'un a t-il une solution?

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 593
    Points : 34 249
    Points
    34 249
    Par défaut
    Salut,
    passe le format de ta cellule au format "Nombre", puis supprime les décimales excédentaires.

    En automatisant via VBA, une ligne simple suffit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub Macro1()
        Selection.NumberFormat = "0"
    End Sub
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut
    Salut jpcheck

    Merci pour le retour.
    si par exemple je saisis 6012891103024464, il devient 6,01289E+15 et dans la barre des formule je lis 6012891103024464.
    Je voulais dire que c'est 6012891103024460 qui s'affiche dans la barre des formules et non 6012891103024464 (le bon résultat). Le dernier chiffre a été transformé en 0 au lieu que ca demeure 4.
    passe le format de ta cellule au format "Nombre", puis supprime les décimales excédentaires.
    J'ai réussi cela mais le faite que le dernier chiffre ai été remplacé par 0 comment faire pour retrouver le chiffre qui a été remplacé?

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 593
    Points : 34 249
    Points
    34 249
    Par défaut
    Hum, si tu peux stocker l'information sous forme textuelle, tu peux mettre une apostrophe avant ta série de chiffres.
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut
    Salut jpcheck

    Je vais passer par une autre alternative tout en m'inspirant de votre première solution.
    Dans un premier temps je vais copier les données à partir du logiciel et coller sur un fichier word (pour éviter le changement des chiffres),
    Secondo, j'ai constaté que les données importées comportent 16 chiffres (excel n'acceptant que 15 chiffres au plus), et ont une même racine qui est 6012 (c'est à dire que dans chacune de mes cellules, les données chiffrées commencent toujours par 6012),
    Tercio, je vais à partir de word remplacer les racine par du vide (pour réduire le nombre de chiffre). de 16 je resterai avec 12. Je peux maintenant coller le tout sur excel sans crainte d'éventuel changement.
    J'applique votre solution :
    passe le format de ta cellule au format "Nombre", puis supprime les décimales excédentaires.
    Je fais maintenant une concatenation(formule)=6012&a5 que je vais tirer jusqu'à la limite des autres cellules.
    Je l'ai expérimenté et ca marche pour mon problème.
    N.B:mon avantage est que mes données chiffrées comportent une même racine;ce qui a permi de les remplacer par du vide.

  6. #6
    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 677
    Points
    18 677
    Par défaut




    Bonjour, bonjour !

    C'est quand même plus simple de formater la cellule en texte au préalable, il n'y a besoin de rien d'autre !

    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  7. #7
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut
    Bnjour Marc et le forum

    Merci pour votre contribution.
    J'ai expérimenté cette solution sans gain de cause.
    Je vous invite à tester votre solution par 6012891103024464 et vous verrez le résultat.

  8. #8
    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 677
    Points
    18 677
    Par défaut





    Cela fonctionne sans souci de mon côté depuis des années avec différentes versions d'Excel ! …


    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  9. #9
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut
    Votre solution fonctionne si après le formatage en texte, la saisie dans la cellule formatée se fait manuellement.
    Mais lorsqu'on copie les données d'une autre source, au collage, le formatage est automatiquement changé (standard). C'est ce que j'ai constaté chez moi (le format texte devient standard).
    Quelqu'un d'autre peut-il nous départager?

  10. #10
    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 677
    Points
    18 677
    Par défaut

    Rappel de la demande initiale :

    Citation Envoyé par capi81 Voir le message
    J'ai saisis des valeur dans des cellules.
    Je constate que lorsque je saisis plus de 15 chiffre dans une cellule, le format de la valeur entrée change.
    Il était donc question à l'origine de saisie qui ne peut être que manuelle sinon ce n'est pas une saisie ‼

    La solution est vraiment simple car base de l'utilisation d'Excel :
    entrer en mode saisie (via F2 par exemple) puis Coller ou CTRL + V …

    Ou comme déjà conseillé, commencer la saisie par une apostrophe, là aussi B-A-BA de l'utilisation d'Excel …

    _________________________________________________________________________________________________

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

    _________________________________________________________________________________________________
    Il n'y a pas que les aigles qui atteignent les sommets, les escargots aussi mais ils en bavent !
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  11. #11
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut
    A l'origine j'ai utilisé effectivement le mot "saisis".
    Je devrais dire reformuler mon problème de la sorte:"Je copie des données d'une autre source et les colle sur un fichier excel. Au collage, je constate que la colonne comportant les chiffres de plus de 15 (chiffres) se transforme en 6,01289E+15 et le 16è chiffre devient 0."
    Donc je ne saisis pas manuellement mais je copie d'une autre source vers excel.
    Je pense avoir recadrer les choses et m'excuse du désagrément causé.

  12. #12
    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 677
    Points
    18 677
    Par défaut

    Et tu as deux solutions forçant le mode saisie d'Excel …

    Troisième solution dans le cas de plusieurs données collées en une fois : ne pas oublier de formater les cellules en texte
    puis Collage spécial en Texte

    _________________________________________________________________________________________________

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

    _________________________________________________________________________________________________
    Deux choses sont infinies : l’Univers et la bêtise humaine.
    Mais en ce qui concerne l’Univers, je n’en ai pas encore acquis la certitude absolue ! (Albert Einstein)
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  13. #13
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut
    Super!!!!
    Merci pour cette magnifique solution.

  14. #14
    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 677
    Points
    18 677
    Par défaut




    Rappel afin d'éviter de ne pas obtenir de réponse la prochaine fois
    (surtout lorsque la problématique est régulièrement mal exposée initialement !) :

    _________________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  15. #15
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut
    C'est noté.

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

Discussions similaires

  1. [Toutes versions] Chiffre significatif maximum accepter par excel
    Par ferrari89 dans le forum Excel
    Réponses: 3
    Dernier message: 26/11/2014, 20h53
  2. [XL-2010] Master problème chiffres significatifs
    Par ArcticM dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 16/10/2013, 19h51
  3. Réponses: 6
    Dernier message: 16/11/2007, 15h53
  4. Comment utiliser Developpez.com pour résoudre votre problème
    Par Anomaly dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 0
    Dernier message: 08/01/2005, 11h11
  5. Algorithme pour chiffres significatifs en Assembleur
    Par lutin2003 dans le forum Assembleur
    Réponses: 5
    Dernier message: 09/09/2004, 10h47

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