Bonjour,
j'ai eu énormément de mal à trouver des infos sur le net sur comment trouver si il y a des caractères spéciaux dans les cellules d'une colonne.
Finalement j'y suis arrivé et je me dit que ça peut servir à d'autres donc voici ma solution:
A+
EDIT: LCel étant un nombre de caractères, c'est un Integer et pas un String...
j'ai eu énormément de mal à trouver des infos sur le net sur comment trouver si il y a des caractères spéciaux dans les cellules d'une colonne.
Finalement j'y suis arrivé et je me dit que ça peut servir à d'autres donc voici ma solution:
Code:
Sub Control_Format()
'controle le format de saisie
Dim Cel As Range, j As Integer
Dim CodeAscii As Integer, LCel As Integer
Dim NonAscii As Boolean
With ActiveSheet
For Each Cel In Range("B2", Range("B65536").End(xlUp))
LCel = Len(Cel.Value)
For j = 1 To LCel
CodeAscii = AscW(Mid(Cel.Value, j))
Select Case CodeAscii 'liste les caractères autorisés
Case 97 To 122 ' Caracteres minuscule
Case 65 To 90 'Caracteres majuscule
Case 95 'caractères tiret bas
Case 32 ' espace
Case 45 To 46 'caractères - et .
Case 48 To 57 'nombre de 0 à 9
Case Else
NonAscii = True
End Select
If NonAscii = True Then MsgBox "Vous avez des caractères illégaux dans vos noms, veuillez corriger et recommencer" & vbNewLine & Cel.Value & " contient " & Chr(CodeAscii): Exit Sub
Next j
Next Cel
End With
End Sub
A+
EDIT: LCel étant un nombre de caractères, c'est un Integer et pas un String...
Dernière édition: