EXCEL-Lettres d'un mot transformée en Couleur

Aztek33 Messages postés 553 Date d'inscription   Statut Membre Dernière intervention   -  
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,

Je suis en train de faire un tableau excel où je remplace les lettres d'un mot par des couleurs. Pour éviter d'y passer trop de temps, je voudrais taper le mot et que chaque lettre se "transforme" en mot de la couleur. Pour y arriver, je me suis dit que ça serait plus facile de mettre 1 lettre par cellule. Ex :

SI dans la cellule A1 j'ai écrit "A", je veux que dans la même cellule, il y ait écrit "BLEU"
En gros, dès que j'ai écrit une lettre dans une cellule, la lettre disparait pour qu'il y ait écrit une couleur.
Par exemple, le mot LAIT donnera :
ORANGE ROUGE VERT MARRON

Voici le code couleur :
A = ROUGE
B = PARME
C = BLEU CLAIR
D = BLEU MARINE
E = BLEU
I = VERT
L = ORANGE
M = VIOLET
N = ROSE
O = JAUNE
P = VERT FONCE
R = NOIR
S = GRIS
T = MARRON
U = BLANC

Attention, je ne veux pas que la cellule CHANGE de couleur, je veux qu'il y ait écrit la couleur en toute lettre
Pouvez-vous m’aider ??
Configuration: Windows Vista
Firefox 2.0.0.15

9 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    ou bien si tu es réfractaire à vba :

    Saisir le mot en colonne A, la formule en colonne B et étendre vers la droite.
    La liste 'couleur' est en feuil2
    http://www.cijoint.fr/cjlink.php?file=cj200807/cijASa1Mdg.xls
    eric
    2
    1. Raymond PENTIER Messages postés 58227 Date d'inscription   Statut Contributeur Dernière intervention   17 490
       
      EXCELLENT ! C'est excellent, eriiic : Tu as réussi à trouver la fonction [ COLONNE() ] la mieux appropriée à ce cas de figure, et qui permet de n'avoir qu'une formule unique pour répondre à la question. Je te félicite !
      0
    2. just1xpa2 Messages postés 37 Date d'inscription   Statut Membre Dernière intervention   196
       
      bonjour, eriic, et bon dimanche du sud france,bon travail de reflexion, juste une question supplementaire, comment ca se passe pour les autres lettres de l'alphabet, merci d'avance, et/ou eventuellement comment ajouter au tableau la couleur que l'on desire associé, suivant la lettre...
      je sais être tordu , mais a y être, allons jusqu'au bout de la chose.. merci
      0
      1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281 > just1xpa2 Messages postés 37 Date d'inscription   Statut Membre Dernière intervention  
         
        Bonjour,

        comme tu as pu le tester, si la lettre n'est pas définie tu as tout simplement #NA comme d'hab...
        La liste est en Feuil2 si besoin de la compléter.

        eric
        0
      2. Raymond PENTIER Messages postés 58227 Date d'inscription   Statut Contributeur Dernière intervention   17 490 > just1xpa2 Messages postés 37 Date d'inscription   Statut Membre Dernière intervention  
         
        Pour la couleur, c'est Mise en forme conditionnelle.
        Jusqu'à Word 2003, 3 couleurs + la couleur par défaut = 4 possibilités.
        Mais avec Word 2007, le choix s'élargit considérablement.
        0
  2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Merci raymond :)
    mais c'est à se demander si la personne à l'origine de ce post prend la peine de regarder vraiment les réponses...
    Bonne journée
    2
  3. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonsoir

    XL<2007

    "outils-correction automatique" te permet de créer ton code couleur-texte

    Michel
    1
  4. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bonsoir,
    Bonsoir Michel, je ne crois pas que c'est ca qu'il veux...
    Avec une macro, Au cas ou tu connais pas le VBA.
    tu tape Alt+F11, dans l'IDE de VBA, la fenêtre de gauche (explorateur de projet) tu a le nom des feuilles, double clic sur le nom de la feuille concernée, dans la nouvelle fenêtre tu fait un copier/coller du code ci-dessous

    Dim TB(65 To 90) As String
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Static AncCel As String
        On Error Resume Next ' au cas d'écritue d'un signe ou autre qu'une lettre 
        If AncCel <> "" Then
            Range(AncCel) = TB(Asc(UCase(Range(AncCel))))
        Else
            InitVar
        End If
        AncCel = Target.Address
    End Sub
    Sub InitVar()
    TB(65) = "ROUGE"
    TB(66) = "PARME"
    TB(67) = "BLEU CLAIR"
    TB(68) = "BLEU MARINE"
    TB(69) = "BLEU"
    TB(73) = "VERT"
    TB(76) = "ORANGE"
    TB(77) = "VIOLET"
    TB(78) = "ROSE"
    TB(79) = "JAUNE"
    TB(80) = "VERT FONCE"
    TB(82) = "NOIR"
    TB(83) = "GRIS"
    TB(84) = "MARRON"
    TB(85) = "BLANC"
    
    End Sub


    Tu peu taper en minuscule ou majuscule, si la lettre n'est pas bonne, la cellule reste vide.
    A+
    1
    1. just1xpa2 Messages postés 37 Date d'inscription   Statut Membre Dernière intervention   196
       
      bonsoir, tu pourrais me mettre un fichier en liaison, que je comprenne le fonctionnement, avec aussi la marche a suivre pour le realise, car le vba, personnellement, je n'en n'ai jamais fait, il faut un debut a tout
      merci d'avance
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Raymond PENTIER Messages postés 58227 Date d'inscription   Statut Contributeur Dernière intervention   17 490
     
    J'ignore à quoi ressemble ton tableau.
    Si jamais il ne se compose que d'une seule colonne, j'ai une manipulaton qui ne fait pas appel à des macros.
    J'ai tout mis dans la même feuille, pour une meilleure compréhension, mais normalement les calculs intermédiaires seraient sdans une autre feuille du fichier.

    Tu donnes un nom, CODAGE par exemple, à ton tableau de correspondance à 2 colonnes qui commence par A et se termine par BLANC (et qui peut très bien se trouver dans une autre feuille du même fichier).
    Il ne te reste qu'à utiliser la fameuse et incontournable fonction RECHERCHEV pour règler ton problème, en lisant une à une les lettres (fonction STXT) qui composent le mot ou la phrase ; dans mon exemple je me liimite à 38 caractères et espaces. D'ailleurs pour gérer les éventuels espaces, j'ajoute une ligne au tableau CODAGE après la lettre U. Chaque colonne, à partir de G:G, reprend le résultat précédent et y ajoute le nouvel élément, grâce à l'opérateur de concaténation &.
    Les saisies se font dans ton tableau principal, colonne D:D, et le résultat s'affiche à côté, colonne E:E, et non pas à la place de la saisie. https://www.cjoint.com/?hnfklM2YUx

    Je sais bien que ce n'est pas exactement ta demande, mais il faut avouer qu'elle est un peu biscornue, et que c'est seulement avec une macro que les amis de CCM parviendront peut-être à te donner entière satisfaction.
    1
  7. Aztek33 Messages postés 553 Date d'inscription   Statut Membre Dernière intervention   56
     
    Pour tenter de mieux vous expliquer, j'ai mis sur le lien la feuille excel que j'ai déjà commencé à remplir A LA MAIN.

    https://www.cjoint.com/?hnnKaGIYlq

    Merci d'avance

    Aztek
    1
    1. lermite222 Messages postés 9042 Statut Contributeur 1 199
       
      Beh le classeur que je t'ai passer fait EXACTEMENT CA mais sur toutes les colonnes, suffit simplement de limité aux adresses des colonnes.
      A-tu essayé le classeur que je t'ai communiqué ?
      A+
      0
  8. Aztek33 Messages postés 553 Date d'inscription   Statut Membre Dernière intervention   56
     
    Excellent eric, ça fonctionne parfaitement ! merci bcp
    1
  9. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bonjour tous,
    Effectivement par formules c'est nickel, sauf que si c'est un classeur employé un peu comme un dictionnaire ou similaire il risque d'y avoir des milliers de lignes.
    J'ai tester avec 1800 lignes et le fichier fair plus d'un méga, le même classeur avec un formule en VBA fait 170K
    En VBA ont peu traiter en même temps les autres paramètres, comme l'intérieur par exemple pour répondre à la question de just1xpa2 et avec qelques lignes de codes supplémentaires tout les param souhaiter.

    Un petit exemple en VBA...
    Il permet de réactualiser l'ensemble du fichier, de faire du traitement instantané sans devoir copier de formule, de colorer les cellules si souhaiter.
    https://www.cjoint.com/?hoqwlnGoeh
    Bonne continuation,
    A+
    1
    1. just1xpa2 Messages postés 37 Date d'inscription   Statut Membre Dernière intervention   196
       
      ok, pourr le mode vba, concernant le fichier, pas de souci, la question, a laquelle tu n'a pas de reponse, exemple pour la lettre G , comment tu la valide et avec quelle couleur, car actuellement, elle est en vide ou n//a
      c'était la question posé, ainsi que pour toute autre lettre ne figurant pas dans les mots a la base...
      0
      1. lermite222 Messages postés 9042 Statut Contributeur 1 199 > just1xpa2 Messages postés 37 Date d'inscription   Statut Membre Dernière intervention  
         
        Je n'ai pas voulu mettre plus de lettre pour que ca corresponde avec la demande, sinon, aucun problème pour ajouter tout et n'importe quoi, toutes les majuscules, toutes les minuscules, les chiffres et même la ponctuation, les paranthèses les crochet etc...
        Si tu examine un peu le code, tu verra qu'il n'y a que quelques variables à ajouter.
        A+
        0