[VBA] Manipulation chaine de caractere
Clément
-
Polux31 Messages postés 7219 Statut Membre -
Polux31 Messages postés 7219 Statut Membre -
Bonjour,
Je rencontre un léger soucis et j'aimerai un petit peu d'aide s'il vous plait.
Je dois extraire les 5 derniers caractères de chaque cellule de la colonne C (de C2 a C1050) et les coller dans la colonne D.
Etant donné que ses chiffres sont variables j'ai tenté de faire un :
Dim AnyString3, MyStr3
AnyString3 = Range("C2:C1050")
MyStr3 = Right(AnyString3, 5)
ActiveSheet.Range("D2:D1050") = MyStr3
mais apparament ce n'est pas aussi simple ^^
Pour info le débugguer me souligne cette ligne:
MyStr3 = Right(AnyString3, 5)
Merci de votre aide les amis :(
Je rencontre un léger soucis et j'aimerai un petit peu d'aide s'il vous plait.
Je dois extraire les 5 derniers caractères de chaque cellule de la colonne C (de C2 a C1050) et les coller dans la colonne D.
Etant donné que ses chiffres sont variables j'ai tenté de faire un :
Dim AnyString3, MyStr3
AnyString3 = Range("C2:C1050")
MyStr3 = Right(AnyString3, 5)
ActiveSheet.Range("D2:D1050") = MyStr3
mais apparament ce n'est pas aussi simple ^^
Pour info le débugguer me souligne cette ligne:
MyStr3 = Right(AnyString3, 5)
Merci de votre aide les amis :(
A voir également:
- [VBA] Manipulation chaine de caractere
- Caractère spéciaux - Guide
- Caractere speciaux - Guide
- Caractère ascii - Guide
- Caractere vide - Guide
- Plus de chaine tv - Guide
3 réponses
Bonjour,
"AnyString3" est une plage, tu ne peux donc pas extraite les 5 derniers caractères de la plage. Tu veux le faire dans toutes les cellules. Il faut donc parcourir ta plage:
;o)
"AnyString3" est une plage, tu ne peux donc pas extraite les 5 derniers caractères de la plage. Tu veux le faire dans toutes les cellules. Il faut donc parcourir ta plage:
Dim plage As Range
Dim cel
Dim str As String
Dim lig As Long
Set plage = Range("C2:C1050")
For Each cel In plage
str = Right(cel.Value, 5)
lig = cel.Row
Range("D" & lig).Value = str
Next cel
Set plage = Nothing
;o)