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 :

Colorier caractère dans une cellule en fonction de leur position [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Par défaut Colorier caractère dans une cellule en fonction de leur position
    Bonjour,

    Je réceptionne des noms de fichiers qui ont tous le même format.

    ex: 0162_31_20170720_103537.txt

    Bien sur la taille des deux premier code entre "_" peut varier.

    Pour cela je souhaite mettre en couleur les code correspondant pour chaque chiffre.


    comme cela Nom : Capture couleur valeurs.PNG
Affichages : 443
Taille : 1,3 Ko

    Si vous avez une piste?

    Merci d'avance.

  2. #2
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Par défaut
    bonjour,
    est ce que tu peu poster un code pour écrire toute la ligne, en bleu , en rouge , en vert ?
    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  3. #3
    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
    1) Tu parles de "chiffres" et ton exemple montre que tu veux colorier des nombres et non des chiffres. Qu'en est-il donc ?
    2) nous ne parlerons de coloriage d'une ou de sous-chaîne(s) (c'est là UNE difficulté) que lorsque tu auras su isoler (c'est là UNE AUTRE difficulté) la/les sous-chaînes à colorier
    Une discussion = UNE difficulté.
    Question, donc : ton problème est-t-il d'isoler chacune des chaînes ou cette étape étant passée, de la colorier ?

  4. #4
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Par défaut
    Bonjour,

    Merci pour votre réponse.

    La source correspond à des noms de fichiers bruts qui ont ce format 0162_31_20170720_103537.

    Je cherche une macro pour isoler les nombres entre les "_" afin des les colorier en en bleu , en rouge , en vert. Résultat que j'ai effectué à la main pour l'exemple.

    Ce que je souhaite c'est pouvoir automatiser l'isolation de chacune des chaînes de caractére afin de les colorier.

    Voila si c'est plus clair ??

  5. #5
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Par défaut
    bonjour,

    regarde la fonction Split

    TabElement = Split("0162_31_20170720_103537" , "_")
    TabElement(0) = "0162"
    TabElement(1) = "31"
    TabElement(2) = "20170720"
    TabElement(3) = "103537"

    TabElement ou ce que tu veux....

    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  6. #6
    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
    Voila si c'est plus clair ??
    Ni plus clair, ni moins clair que ton premier message.
    Quelle est LA difficulté (une seule des deux) que tu veux traiter :
    1) isoler tes sous-chaînes ?
    ou
    2) colorier une sous-chaîne isolée ?
    La réponse ne peut en ce qui me concerne qu'être 1) ou 2) mais pas l'ensemble 1) et 2).
    Je ne répondrai donc qu'au seul point (1 ou 2) que tu auras choisi.

  7. #7
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Par défaut
    D'accord,

    Le point de blocage que j'ai c'est plutôt sur

    1) isoler tes sous-chaînes.

    Après colorier je vais m'en sortir.

    Split j'ai déjà vu mais que dans le cas de supprimer des bouts de chaîne.

  8. #8
    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
    Split j'ai déjà vu mais que dans le cas de supprimer des bouts de chaîne
    Et alors ? La réponse de mjpmjp (que je salue) est très claire
    Dans son exemple, l'array obtenu est composé de n éléments dont chacun est l'une de tes sous-chaînes.
    n est égal à Ubound(tabelement).
    Une simple boucle for ... to ... next te permet d'extraite chaque élément. Le reste n'est que concaténation élémentaire avec coloriage au fur et à mesure !

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 26/10/2014, 11h54
  2. Réponses: 2
    Dernier message: 08/01/2013, 21h52
  3. Réponses: 4
    Dernier message: 28/09/2011, 12h04
  4. Comment écrire dans une cellule la fonction SUM en vba?
    Par Subkill dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/02/2007, 20h24
  5. Réponses: 1
    Dernier message: 06/12/2006, 10h22

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