Bonjour j'ai une chaîne de texte de type code postal étranger, je cherche à développer une petite macro pour rechercher si dans la Colonne B j'ai un indicatif "GB" je vais modifier la chaîne de texte contenue dans la colonne A en insérant en 3e position en partant de la droite un espace. Comment puis je faire?
Sub EspUK()
' EspUK Macro
' ajoute l'espace avant les trois dernières lettres pour les codes en GB
'SI la valeur entre parenthèses (colonne indicateur du pays) est ="GB" si condition vraie alors on
'exécute les instructions placées après THEN
For Each cel In Range A:A
cel.Value = Right(cel.Value & "", 3)
Next cel
End Sub
Je n'arrive pas à placer ma condition et tout s'efface pour ajouter mon espace?
Sub EspUK()
' EspUK Macro
' ajoute l'espace avant les trois dernières lettres pour les codes en GB
'SI la valeur entre parenthèses (colonne indicateur du pays) est ="GB" si condition vraie alors on
'exécute les instructions placées après THEN
For Each cel In Range("A1:A50")
ValeurdelaCellule = cel.Value
NumeroLigneCellule = cel.Row
'test si GB est présent dans la colonne B
If Cells(NumeroLigneCellule, 2).Value = "GB" Then
'On ajoute un espace à la valeur de la cellule si sa longueur est supérieur à 3!
If Len(ValeurdelaCellule) > 3 Then
cel.Value = Left(ValeurdelaCellule, Len(ValeurdelaCellule) - 3) & " " & Left(ValeurdelaCellule, 3)
End If
End If
Next
End Sub
Il convient alors de clore s'il te plait cette discussion (un clic sur le tag RESOLU au niveau de ton tout premier message).
Quelle solution as-tu finalement retenue ?