Imbrication Substitue avec Macro

Résolu
ImaSTAT Messages postés 21 Date d'inscription   Statut Membre Dernière intervention   -  
ImaSTAT Messages postés 21 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je ne suis pas très expérimenté en VBA, et je sais que ce sujet a été discuté plusieurs fois mais je ne trouve pas de façon qui fonctionne pour mon besoin.

Voici:

Je veux retrouver dans "la colonne suivante" la valeur de la colonne précédente mais sans accents.
Donc, en B1:B300 je devrais retrouver les valeurs qui sont en A1:A300 mais sans les accents, en D1:D300 je devrais retrouver les valeurs qui sont en C1:C300 mais sans accents, etc. et ce, pour un total de 80 colonnes (donc 160 colonnes avec les valeurs corrigées).

Étant donné qu'actuellement j'ai besoin de 39 imbrications de SUBSTITUE pour corriger tous les accents, ça fait beaucoup de formules pour une seule colonne (je dois nommer 5 formules qui chacune se réfère à la précédente pour chaque colonne) et je dois répéter les formules sur 80 colonnes.

EX:
FSFN1 = SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(A1;"é";"e");"è";"e");"ê";"e");"ë";"e");"à";"a");"â";"a");"ä";"a");"ç";"c")

FSFN2 = SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(FSFN1;"ì";"i");"î";"i");"ï";"i");"ò";"o");"ô";"o");"ö";"o");"'";" ");"`";" ")

FSFN3 = SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(FSFN2;"ù";"u");"û";"u");"ü";"u");"ÿ";"y");"Ù";"U");"Û";"U");"Ü";"U");" ";" ")

FSFN4 = SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(FSFN3;"É";"E");"È";"E");"Ê";"E");"Ë";"E");"À";"A");"Â";"A");"Ä";"A");"Ç";"C");",";".")

FSFN5 = SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(SUBSTITUE(FSFN4;"Ì";"I");"Î";"I");"Ï";"I");"Ò";"O");"Ô";"O");"Ö";"O");"’";" ")

et finalement, dans la cellule corrigée B1 je met la formule:
MAJUSCULE(FSFN5) pour obtenir le résultat corrigé de A1

Je dois répliquer ces 5 formules pour les 80 colonnes corrigées, ce qui me donne un total de 400 formules.

Est-ce qu'il y aurait moyen de mettre ça en macro ? Il est important de noté que la même feuille sert pour autre chose, soit il y a d'autres colonnes par la suite pour lequel le texte ne doit pas être corrigé.

Merci beaucoup à l'avance

5 réponses

  1. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour

    Un essai
    http://www.cjoint.com/c/FCltCvUMuRo

    Cdlmnt
    1
  2. ImaSTAT Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
     
    Bonjour ccm81,

    Merci beaucoup, ça semble bien fonctionner. Toutefois, est-ce qu'il y a moyen de lancer la macro automatiquement, sans avoir à la lancer manuelle ?

    Ex: si quelqu'un ouvre le fichier et n'a pas les Macro actif, et qu'il les actives, est-ce que le code peut alors s'éxécuter automatiquement ou nous devons absolument lancer avec CTRL+K ?

    Merci
    0
  3. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour

    est-ce qu'il y a moyen de lancer la macro automatiquement, sans avoir à la lancer manuelle ?
    Tu as la solution d'eric (salut à toi au passage), qui nécessite quand même aussi d'avoir accepté l'ouverture des macros

    Cdlmnt
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question