OVH Cloud OVH Cloud

Code Postal

6 réponses
Avatar
Denys
Bonjour à tous,

Voici un bout de code me permettant de vérifier la validité d'un code postal
canadien à partir d'une cellule sur une feuille Excel. J'aimerais que la
vérification puisse se faire à la sortie du Textbox4..... Sauf que je sais
pas comment faire....

Sauriez-vous comment ??

Dim Rg As Range
Set Rg = Range("B21")
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)
Else
MsgBox "Invalid Postal Code"
Exit Sub
End If
End If
Next
End If

Merci beaucoup

Denys

6 réponses

Avatar
Patrick Fredin
Bonjour,

Il faut utiliser l'événement Textbox4_Exit. Il est déclenché quand le
curseur sort d'un textBox.

Patrick

"Denys" wrote:

Bonjour à tous,

Voici un bout de code me permettant de vérifier la validité d'un code postal
canadien à partir d'une cellule sur une feuille Excel. J'aimerais que la
vérification puisse se faire à la sortie du Textbox4..... Sauf que je sais
pas comment faire....

Sauriez-vous comment ??

Dim Rg As Range
Set Rg = Range("B21")
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)
Else
MsgBox "Invalid Postal Code"
Exit Sub
End If
End If
Next
End If

Merci beaucoup

Denys


Avatar
Denys
Salut Patrick,

Merci, mais ça je le savais. Ce que je voulais dire, c'est que dans les
instructions, on fait référence à une cellule (ici B21). Mais moi, je voulais
que la vérification se fasse au sortir du textbox, avant que l'information
aille s'inscrire dans la cellule...

Denys


Bonjour,

Il faut utiliser l'événement Textbox4_Exit. Il est déclenché quand le
curseur sort d'un textBox.

Patrick

"Denys" wrote:

Bonjour à tous,

Voici un bout de code me permettant de vérifier la validité d'un code postal
canadien à partir d'une cellule sur une feuille Excel. J'aimerais que la
vérification puisse se faire à la sortie du Textbox4..... Sauf que je sais
pas comment faire....

Sauriez-vous comment ??

Dim Rg As Range
Set Rg = Range("B21")
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)
Else
MsgBox "Invalid Postal Code"
Exit Sub
End If
End If
Next
End If

Merci beaucoup

Denys




Avatar
Patrick Fredin
Qu'entends-tu par "au sortir du textbox" parce que je ne comprends pas.

"Denys" wrote:

Salut Patrick,

Merci, mais ça je le savais. Ce que je voulais dire, c'est que dans les
instructions, on fait référence à une cellule (ici B21). Mais moi, je voulais
que la vérification se fasse au sortir du textbox, avant que l'information
aille s'inscrire dans la cellule...

Denys


Bonjour,

Il faut utiliser l'événement Textbox4_Exit. Il est déclenché quand le
curseur sort d'un textBox.

Patrick

"Denys" wrote:

Bonjour à tous,

Voici un bout de code me permettant de vérifier la validité d'un code postal
canadien à partir d'une cellule sur une feuille Excel. J'aimerais que la
vérification puisse se faire à la sortie du Textbox4..... Sauf que je sais
pas comment faire....

Sauriez-vous comment ??

Dim Rg As Range
Set Rg = Range("B21")
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)
Else
MsgBox "Invalid Postal Code"
Exit Sub
End If
End If
Next
End If

Merci beaucoup

Denys






Avatar
Denys
Lorsque tu entres les données dans le textbox (situé sur un userform) et que
tu appuies sur Tab pour aller dans un autre textbox...

Ou plus simplement, lorsque l'utilisateur clique sur le bouton de commande
OK qui déclenche les évènements à savoir:

If TextBox1.Value = "" Then
msg = "Veuillez entrer un no de compte"
dialogstyle = vbOKOnly + vbCritical
Title = "Entrée Invalide"
reponse = MsgBox(msg, dialogstyle, Title)
Cancel = True
TextBox1.SetFocus
Beep
Exit Sub
End If

Alors je voudrais avoir queque chose dans le genre:

If textbox4.value <>
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)
Else
MsgBox "Mauvais code postal"
Exit Sub
End If

Est-ce que ça semble plus clair ainsi??

Merci

Denys
Avatar
Patrick Fredin
Alors ma première réponse était bonne. Tu peux aussi faire le contrôle dans
l'événement associé au clic sur le bouton OK.

Patrick

"Denys" wrote:

Lorsque tu entres les données dans le textbox (situé sur un userform) et que
tu appuies sur Tab pour aller dans un autre textbox...

Ou plus simplement, lorsque l'utilisateur clique sur le bouton de commande
OK qui déclenche les évènements à savoir:

If TextBox1.Value = "" Then
msg = "Veuillez entrer un no de compte"
dialogstyle = vbOKOnly + vbCritical
Title = "Entrée Invalide"
reponse = MsgBox(msg, dialogstyle, Title)
Cancel = True
TextBox1.SetFocus
Beep
Exit Sub
End If

Alors je voudrais avoir queque chose dans le genre:

If textbox4.value <>
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)
Else
MsgBox "Mauvais code postal"
Exit Sub
End If

Est-ce que ça semble plus clair ainsi??

Merci

Denys





Avatar
Denys
Nous y voilà....

C'est justement cela que je sais pas comment écrire.....

Denys


Alors ma première réponse était bonne. Tu peux aussi faire le contrôle dans
l'événement associé au clic sur le bouton OK.

Patrick

"Denys" wrote:

Lorsque tu entres les données dans le textbox (situé sur un userform) et que
tu appuies sur Tab pour aller dans un autre textbox...

Ou plus simplement, lorsque l'utilisateur clique sur le bouton de commande
OK qui déclenche les évènements à savoir:

If TextBox1.Value = "" Then
msg = "Veuillez entrer un no de compte"
dialogstyle = vbOKOnly + vbCritical
Title = "Entrée Invalide"
reponse = MsgBox(msg, dialogstyle, Title)
Cancel = True
TextBox1.SetFocus
Beep
Exit Sub
End If

Alors je voudrais avoir queque chose dans le genre:

If textbox4.value <>
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)
Else
MsgBox "Mauvais code postal"
Exit Sub
End If

Est-ce que ça semble plus clair ainsi??

Merci

Denys