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 :

Format nombre avec VBA [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut Format nombre avec VBA
    Bonjour le Forum,

    Dans la zone A4:A178 de mon tableau, j'ai des références saisies, elles sont toutes écrites en format texte. Ces références ont ce format "CN 00 00 00 00 000"; "O0 00 00 00 00 000" et "00 00 00 00 00 000".
    Dans la zone F25:F97, il y a une zone de liste dans chaque cellule, elles font appel aux références saisies dans A4:A178.

    J'aimerai mettre en place, si cela est possible bien entendu, une macro qui modifierait automatiquement le format saisi en format texte.
    Par exemple : je saisie CN01010203004, je souhaite que le format soit en texte CN 01 01 02 03 004 dans la cellule. Idem pour les autres formats (O102030405006 - O1 02 03 04 05 006; 0000000000000 - 00 00 00 00 00 000)

    J'espère avec été clair dans mon explication. L'utilisateur tapera la référence sans espaces, (par exemple : CN00000000000) le but étant d'éviter de taper les espaces entre chaque chiffre.

    Merci par avance pour l'aide que vous pourrez m'apporter
    René

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 2 266
    Par défaut
    Bonjour,

    un format, s'il est toujours le même pour une plage est à mettre directement sur la feuille. Aucun intérêt à le faire par macro.
    De toute façon un format s'adresse à des nombres et CN01010203004 est du texte.
    eric

  3. #3
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut
    Bonsoir,

    Le format ne sera jamais le même sur une même plage. Pour le moment la saisie se fait en laissant des espaces entre les lettres et nombres, ce qui n'est pas pratique, c'est pour cela que j'ai opté pour une macro.
    Quand il n'y a que un ou deux références à saisir on peut le faire sans automatiser la tâche, mais quand il y en a plusieurs dizaine, voir une centaine, ça prend du temps.

    L'utilisateur n'aurait qu'à taper au kilomètre, et le format s'automatise. Mais si ce n'est pas possible tant pis.

    Merci quand même d'avoir participer à ce post

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Ce sera donc en effet du texte et non un "nombre"
    Tu peux toujours aller vers le ridicule et formater à l'avance le texte à saisir dans la cellule.
    Regarde ce que fait ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    toto = "CN01010203004"
    Range("A1") = Left(toto, 2) & " " & Format(Mid(toto, 3, 8), "@@ @@ @@ @@") & " " & Mid(toto, 11)
    toto = "O102030405006"
    Range("A2") = Left(toto, 2) & " " & Format(Mid(toto, 3, 8), "@@ @@ @@ @@") & " " & Mid(toto, 11)
    Mais si tu fais cela, il vaudra mieux n'accepter que si 13 caractères saisis (pas un de plus, pas un de moins).

  5. #5
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut
    Bonsoir unparia,

    Merci pour votre réponse. Effectivement c'est du texte, mais je ne peux pas, plutôt je ne sais pas, le personnaliser à toute ma plage. Je vais mettre votre proposition en œuvre et je vous tiens au courant.
    Encore merci.
    René

  6. #6
    Membre éprouvé
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Septembre 2007
    Messages
    1 896
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 896
    Par défaut
    Bonjour,

    J'ai mis le code en place, le format qu'il rend me plait bien; Maintenant il faut que je l'adapte à la cellule uniquement saisie car pour le moment il me rempli la colonne entière avec les mêmes données.

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

Discussions similaires

  1. [SP-2007] Colonne au format "nombre" avec des espaces ?
    Par Faro dans le forum SharePoint
    Réponses: 2
    Dernier message: 15/05/2009, 08h48
  2. [XL-2003] format conditionnel avec vba
    Par didinette56 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 13/05/2009, 15h37
  3. Requête : Format Nombre avec 14 décimales !
    Par PascaLem dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 28/03/2009, 12h06
  4. Problème avec un format nombre en VBA Excel
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 25/11/2008, 10h44
  5. [Format]nombres avec des 0
    Par zozolh2 dans le forum API standards et tierces
    Réponses: 6
    Dernier message: 01/06/2004, 08h43

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