Sub decoup() ' definition de la plage de cellule à traiter Dim MaPlage As Range Set MaPlage = Range("A1:A10") 'Boucle pour parcourir cellule plage de Maplage For Each cell In MaPlage Valcell = cell.Value 'boucle pour lire chaque caractere de la cellule For C = 1 To Len(Valcell) Caractere = Mid(Valcell, C, 1) ' Récupère le code ASCII du caractere codeAsci_Caractere = Asc(Caractere) ' test si le caractere est un chiffre, un " ou autre (texte) ' Le code ASCII du " est 34 en décimal. ' Le chiffres sont entre 48 et 57 ' Le reste.. c'est du texte ou des caractères spéciaux. Select Case codeAsci_Caractere Case 48 To 58 Debug.Print "ceci est un nombre" Case 34 Debug.Print "ceci est un apostrophe " Case Else Debug.Print "ceci est du texte" End Select Next ' fin de la boucle C Next ' Fin de la boucle Cell End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question' Le code ASCII du " est 34 en décimal. ' Le chiffres sont entre 48 et 57 ' Le reste.. c'est du texte ou des caractères spéciaux. Select Case codeAsci_caractere Case 48 To 58: cell.Offset(0, 1) = Mid(cell, 1, InStr(1, cell, "'", vbTextMethod))
If IsNumeric(Variable) then 'Instruction End ifpour tester si c'est un chiffre...Si ca l'est pas c'est que ta une lettre.