Optimisation de code pour effacer selon conditions le débu

Bonjour

les cellules de la colonne A comportent pour certaines la forme juridique ( SARL –SA-SCI-EIRL-EURL-SASU-EURL)

Pour être exploitable, le fichier ne doit pas comporter cette forme juridique ni l’espace situé derrière.

J’ai donc créé une macro qui le fait

Cependant la vitesse d’exécution de la macro est trop longue .

Quelqu'un peut-il m'aider à optimiser le code , je vous remercie d’avance

20classeur3.xlsm (17.09 Ko)

Bonjour,

Sub sup()
    Dim ColA, soc, n%, i%, s%
    soc = Split("SARL SA SCI EIRL EURL SASU EURL")
    With ActiveSheet
        n = .Cells(.Rows.Count, 1).End(xlUp).Row
        ColA = .Range("A2:A" & n)
    End With
    For i = LBound(ColA) To UBound(ColA)
        For s = 0 To 6
            ColA(i, 1) = Replace(ColA(i, 1), soc(s) & " ", "")
        Next s
    Next i
    ActiveSheet.Range("A2:A" & n).Value = ColA
End Sub

NB- SC ou SCP ne faisant pas partie de ta liste de mentions juridiques ne sont pas supprimées... Compléter éventuellement la variable soc (et ajuster la boucle s en fonction de son contenu.

Pour optimiser un code : on déclare toujours ses variables, on dote toutes ses expressions de qualificateurs d'objet, on élimine tout Select ou équivalent, on évite d'opérer directement sur la feuille au profit de tableaux... Voilà pour l'essentiel.

Cordialement.

Rechercher des sujets similaires à "optimisation code effacer conditions debu"