Macro vba eliminer Symbole alphanumerique et mettre lettre en capital

  • Initiateur de la discussion Initiateur de la discussion fleur
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

fleur

XLDnaute Nouveau
Bonjours les Excel Master


J' ai mon fichier excel dans la colonne A, je voudrais un code macro (programmer par bouton) afin d ' eliminer tout symbole alphanumérique dans cette colonne et mettre toutes lettres en CAPITAL si les lettres sont en minuscules dans la colonne A
j' ai joint mon fichier


Je vous remercie d ' avance pour votre aide


fleur
 

Pièces jointes

Re : Macro vba eliminer Symbole alphanumerique et mettre lettre en capital

Bonjour


Cela fonctionne tres bien mais il arrive quans j ai beaucoup de lignes et plusieur feuille excl ouverte en meme temps que la macro tourne et me fait un bug sur cette ligne la

Next i

Merci pour ton aide

merci pour ton aide
 
Re : Macro vba eliminer Symbole alphanumerique et mettre lettre en capital

Bonjour le fil, Tototiti2008 😉

Pourquoi ne pas utiliser les Expressions régulières 😛
Code:
Sub Test()
  Dim i As Long, Txt As String, Txt2 As String
  For i = 2 To ThisWorkbook.ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
    Txt = UCase(Cells(i, 1).Value)
    With CreateObject("VBScript.RegExp")
      .Global = True
      .IgnoreCase = True
      .Pattern = "[^\w]"
      Txt2 = .Replace(Txt, "")
    End With
    Cells(i, 1).Value = Txt2
  Next i
End Sub

A+
 
Re : Macro vba eliminer Symbole alphanumerique et mettre lettre en capital

Bonjour à tous.


Plus rapide !

Code:
Sub toto()
Dim i&, j&, k%, s$, p As Range, v()
  With ActiveSheet
    Set p = .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp))
    v = p.Value
    For i = 2 To UBound(v)
      s = UCase(v(i, 1))
      For j = Len(s) To 1 Step -1
        k = Asc(Mid$(s, j, 1))
        If 65 > k Or k > 90 Then s = Mid$(s, 1, j - 1) & Mid$(s, j + 1)
      Next
      v(i, 1) = s
    Next
    p.Value = v
  End With
End Sub


Bon dimanche.


ℝOGER2327
#7983


Vendredi 20 Tatane 142 (Saint Tiberge, frère quêteur - fête Suprême Quarte)
15 Thermidor An CCXXIII, 0,3038h - brebis
2015-W31-7T00:43:45Z
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
20
Affichages
874
Retour