mettre un format de code postal canadien dans une cellule

T

Target

Guest
Bonjour

voila comment mettre un code postal canadien en vba dans une cellule

ex: en A1 je marque "g1h5a8" et lorsque je passe à la cellule B1 ,A1 se transforme en "GH1-5A8"


merci de votre réponse
 
L

Lupin

Guest
En insérant ce code au niveau de feuille concernée cela devrait marcher :

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
ActiveCell.Offset(0, -1) = _
UCase(Left(ActiveCell.Offset(0, -1), 3)) _
& "-" & UCase(Right(ActiveCell.Offset(0, -1), 3))
End Sub

En changeant de cellule vers B1 la procédure événementielle SelectionChange de la feuille active est déclenchée. On place alors dans la cellule à la gauche de celle activée la valeur transformée.

J'espère que ceci est la réponse attendue.

Salutations.
Lupin
 
L

Lupin

Guest
Un peu amélioré pour éviter un message d'erreur si on arrive en A1 et de mettre uniquement un '-' si la cellule quittée est vide.

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If ActiveCell.Column > 1 Then
If Not IsEmpty(ActiveCell.Offset(0, -1)) Then
ActiveCell.Offset(0, -1) = _
UCase(Left(ActiveCell.Offset(0, -1), 3)) _
& "-" & UCase(Right(ActiveCell.Offset(0, -1), 3))
End If
End If
End Sub


Lupin
 
T

Target

Guest
pour Lupin petit Probléme d'erreur

Bonjour Lupin

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If ActiveCell.Column > 1 Then
If Not IsEmpty(ActiveCell.Offset(0, -1)) Then
ActiveCell.Offset(0, -1) = _
UCase(Left(ActiveCell.Offset(0, -1), 3)) _
& "-" & UCase(Right(ActiveCell.Offset(0, -1), 3))
End If
End If
End Sub

encore merci pour le code mais en activant une ligne par ex la ligne 6 en cliquant sur le No 6 ce qui active toute la ligne ce message d'erreur apparait " erreur définie par l'application ou par l'objet " pourrai tu m'aider a résoudre ce petit probléme je suis novice en vba

merci de ta réponse et de ta patience
 

Discussions similaires

Statistiques des forums

Discussions
312 332
Messages
2 087 362
Membres
103 529
dernier inscrit
verdier.christophe@outloo