A voir également:
- Convertir un chiffre en lettre en langage c
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Clavier iphone chiffre et lettre - Guide
- Chiffre en lettre - Télécharger - Outils professionnels
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Langage ascii - Guide
2 réponses
Bonjour
Pour le fun, un exemple en utilisant la bibliothèque de mon grenier
(textes en colonne A restitution en colonne B
Pour le fun, un exemple en utilisant la bibliothèque de mon grenier
(textes en colonne A restitution en colonne B
Option Explicit
'------- --------
Sub separer_nombre_texte()
Dim texto As String, Lig As Integer, Derlig As Integer
Application.ScreenUpdating=false
With ActiveSheet
Derlig = .Columns("A").Find(what:="*", searchdirection:=xlPrevious).Row
For Lig = 1 To Derlig
texto = .Cells(Lig, "A")
.Cells(Lig, "B") = Right(extrait_chiffres(texto), 2) & " " & extrait_lettres(texto)
Next
End With
End Sub
'--------------
Function extrait_chiffres(ByRef texto As String) As Long
Dim reg As Object
Dim extraction As Object
Dim Digit
Set reg = CreateObject("vbscript.regexp")
'on travaille sur toute la cellule
reg.Global = True
'le modèle est des caractères "digitaux ("d") à n chiffres (d?\)
reg.Pattern = "(\d)"
' éxécute l'extraction svt modèle (collection des digits...)
Set extraction = reg.Execute(texto)
For Each Digit In extraction
' concaténète les membres de la collection "extraction"
extrait_chiffres = extrait_chiffres & (Digit.Value)
Next Digit
Set extraction = Nothing
Set reg = Nothing
End Function
'-------
Function extrait_lettres(ByRef texto As String) As String
Dim reg As Object
Dim extraction As Object
Dim Digit
Set reg = CreateObject("vbscript.regexp")
reg.Global = True
reg.Pattern = "(\D)"
Set extraction = reg.Execute(texto)
For Each Digit In extraction
extrait_lettres = extrait_lettres & (Digit.Value)
Next Digit
Set extraction = Nothing
Set reg = Nothing
End Function
Bonjour,
Repère la position de la première lettre dans ta chaîne de caractères complète avec une boucle, puis utilise Mid ou Right pour prendre la chaîne à partir de cette position moins 2 crans...
Pour trouver la position tu peux p. ex. utiliser Do While ... Loop :
- avec les codes ASCII (Asc(caractère) renvoie le code ASCII)
- et InStr(caractère,"0123456789")>0
A+
Repère la position de la première lettre dans ta chaîne de caractères complète avec une boucle, puis utilise Mid ou Right pour prendre la chaîne à partir de cette position moins 2 crans...
Pour trouver la position tu peux p. ex. utiliser Do While ... Loop :
- avec les codes ASCII (Asc(caractère) renvoie le code ASCII)
- et InStr(caractère,"0123456789")>0
A+