Transformer Formule en Macro

chopin26 -  
 chopin26 -
Bonjour,
j'ai besoin de transformer cette formule en macro.
Elle a pour fonction de supprimer un underscore dans un mot si le underscore est en 6ème position dans un mot.
La formule fonctionne parfaitement mais environ 30000 lignes à traiter.

=SI(TROUVE("_";A1)=6;SUBSTITUE(A1;"_";"");A1)

A1 sera à remplacer par colonne A.

Merci pour vos contributions.

1 réponse

  1. via55 Messages postés 14391 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour chopin

    Macro à mettre dans un module et à lancer depuis la feuille concernée :
    Sub suppunderscore()
    On Error Resume Next
    For n = 1 To 30000 'nombre de lignes à modifier si nécessaire
    If Application.WorksheetFunction.Find("_", Range("A" & n)) = 6 Then Range("A" & n) = Application.WorksheetFunction.Substitute(Range("A" & n), "_", "")
    Next
    End Sub

    Cdlmnt
    Via
    0
    1. chopin26
       
      Merci ;)
      0