Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

code postal canadien

12 réponses
Avatar
Souris.verte
Bonjour, je suis à la recherche d'un code personnalisé pour afficher un code
postal canadien.

Voici, ce à quoi ça ressemble: G0V 1W3

Les lettres doivent être en majuscules et il doit y avoir un espace en les 3
premiers caractères et les 3 derniers. Je veux être capable de faire des
tris par la suite.

merci de votre aide!
En passant j'ai réglé mon problème de ce matin. Merci à tous! :-)

2 réponses

1 2
Avatar
michdenis
Bonjour Souris,

Voici la procédure originale d'hier :

Tout ce qui est couleur dans cette procédure n'est pas obligatoire, cela avait pour but de signifier à l'auteur qu'il y
avait un problème avec le format de la cellule.

Pour récupérer l'index de la couleur de ta cellule de base,

Utilise cette macro :

'-------------
Sub MaCouleur()

Remplace Range("A5") par une cellule de ta plage de données des codes postaux.

MsgBox "La couleur de fond : " & Range("C5").Interior.ColorIndex
MsgBox "La Couleur du texte: " & Range("C5").Font.ColorIndex

End sub
'--------------

Lorsque tu auras récupéré les "numéro" des couleurs, remplace dans la procédure suivante dans ces lignes de code :

c.Interior.ColorIndex = xlNone
c.Font.ColorIndex = xlAutomatic

xlNone par "Numéro couleur de fond Trouvé"
xlAutomatic par "Numéro Couleur de la police trouvé"

'------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

Dim Rg As Range
Set Rg = Intersect(Target, Columns(3))
Application.EnableEvents = False
If Not Rg Is Nothing Then
For Each c In Rg
If c <> "" Then
c.Value = UCase(Application.Trim(c))
If c.Value Like "[A-Z][0-9][A-Z] [0-9][A-Z][0-9]" Or _
c.Value Like "[A-Z][0-9][A-Z][0-9][A-Z][0-9]" Then
c.Value = Left(c, 3) & " " & Right(c, 3)
c.Interior.ColorIndex = xlNone
c.Font.ColorIndex = xlAutomatic
Else
MsgBox "la saisie du code postal est inexacte"
c.Interior.ColorIndex = 3
c.Font.ColorIndex = 2
End If
End If
Next
End If
Application.EnableEvents = True
End Sub
'------------------------------------------


Salutations!


"Souris" a écrit dans le message de news:ODeOFDH$
Bonjour, suite à cette macro, j'aimerais conserver la couleur de ma colonne.
Que dois-je ajouter? En passant, la couleur est vert clair. Parce que à la
saisie, la macro ne tient pas compte de la couleur... Désolée de ce manque
de clarté de ma part!

Merci michdenis!

"Souris.verte" a écrit dans le message de
news:%233hAuI%23%
Bonjour, je suis à la recherche d'un code personnalisé pour afficher un
code

postal canadien.

Voici, ce à quoi ça ressemble: G0V 1W3

Les lettres doivent être en majuscules et il doit y avoir un espace en les
3

premiers caractères et les 3 derniers. Je veux être capable de faire des
tris par la suite.

merci de votre aide!
En passant j'ai réglé mon problème de ce matin. Merci à tous! :-)




Avatar
Souris
Merci j'ai compris le principe! t'es super!

"michdenis" a écrit dans le message de
news:%23NfHSMH$
Bonjour Souris,

Voici la procédure originale d'hier :

Tout ce qui est couleur dans cette procédure n'est pas obligatoire, cela
avait pour but de signifier à l'auteur qu'il y

avait un problème avec le format de la cellule.

Pour récupérer l'index de la couleur de ta cellule de base,

Utilise cette macro :

'-------------
Sub MaCouleur()

Remplace Range("A5") par une cellule de ta plage de données des codes
postaux.


MsgBox "La couleur de fond : " & Range("C5").Interior.ColorIndex
MsgBox "La Couleur du texte: " & Range("C5").Font.ColorIndex

End sub
'--------------

Lorsque tu auras récupéré les "numéro" des couleurs, remplace dans la
procédure suivante dans ces lignes de code :


c.Interior.ColorIndex = xlNone
c.Font.ColorIndex = xlAutomatic

xlNone par "Numéro couleur de fond Trouvé"
xlAutomatic par "Numéro Couleur de la police trouvé"

'------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)

Dim Rg As Range
Set Rg = Intersect(Target, Columns(3))
Application.EnableEvents = False
If Not Rg Is Nothing Then
For Each c In Rg
If c <> "" Then
c.Value = UCase(Application.Trim(c))
If c.Value Like "[A-Z][0-9][A-Z] [0-9][A-Z][0-9]" Or _
c.Value Like "[A-Z][0-9][A-Z][0-9][A-Z][0-9]" Then
c.Value = Left(c, 3) & " " & Right(c, 3)
c.Interior.ColorIndex = xlNone
c.Font.ColorIndex = xlAutomatic
Else
MsgBox "la saisie du code postal est inexacte"
c.Interior.ColorIndex = 3
c.Font.ColorIndex = 2
End If
End If
Next
End If
Application.EnableEvents = True
End Sub
'------------------------------------------


Salutations!


"Souris" a écrit dans le message de
news:ODeOFDH$

Bonjour, suite à cette macro, j'aimerais conserver la couleur de ma
colonne.

Que dois-je ajouter? En passant, la couleur est vert clair. Parce que à la
saisie, la macro ne tient pas compte de la couleur... Désolée de ce manque
de clarté de ma part!

Merci michdenis!

"Souris.verte" a écrit dans le message de
news:%233hAuI%23%
Bonjour, je suis à la recherche d'un code personnalisé pour afficher un
code

postal canadien.

Voici, ce à quoi ça ressemble: G0V 1W3

Les lettres doivent être en majuscules et il doit y avoir un espace en
les


3
premiers caractères et les 3 derniers. Je veux être capable de faire des
tris par la suite.

merci de votre aide!
En passant j'ai réglé mon problème de ce matin. Merci à tous! :-)









1 2