Comparer une format de chaine de caractère

Le
Laurent
Bonjour,
Jeune autodidacte perds ses cheveux

Voici mon problème :

Je cherche a verifier par une macro si l'utilisateur de mon interface a
bien rentré un bon format de chaine de caratère.
En fait le format est de ce type : 567-54-432
En fait seul les 2 tirets sont constants et le groupe de chiffre peux
varier entre chaque je en veux pas vérifier qu'il a bien rentrer CE
chiffre mais bien une suite de caractère correspondant à ce format
J'ai un niveau de VBA moyen moins et même si j'ai un bon livre bah
y'as pas tout et c'est pas forcément explicite

Merci à vous tous d'avance
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #5284781
bonjour Laurent,

je ne suis pas sur de bien saisir ta demande,
est ce qu'il peut y avoir 5 chiffres tiret 4 chiffres tiret 8 chiffres
ou bien c'est constant 3 chiffres tiret 2 chiffres tiret 3 chiffres ?

isabelle

Bonjour,
Jeune autodidacte perds ses cheveux...

Voici mon problème :

Je cherche a verifier par une macro si l'utilisateur de mon interface
a bien rentré un bon format de chaine de caratère.
En fait le format est de ce type : 567-54-432
En fait seul les 2 tirets sont constants et le groupe de chiffre peux
varier entre chaque... je en veux pas vérifier qu'il a bien rentrer CE
chiffre mais bien une suite de caractère correspondant à ce format...
J'ai un niveau de VBA moyen moins et même si j'ai un bon livre bah...
y'as pas tout et c'est pas forcément explicite...

Merci à vous tous d'avance...


Daniel.C
Le #5284771
Bonjour.
Essaie (la chaine étant en A1) :

Sub test()
tablo = Split([A1], "-")
If UBound(tablo) <> 2 Then
MsgBox "Saisie incorrecte"
End If
If Not IsNumeric(tablo(0)) Or _
Not IsNumeric(tablo(1)) Or _
Not IsNumeric(tablo(2)) Then
MsgBox "Saisie incorrecte"
End If
End Sub

Cordialelement.
Daniel
"Laurent "
Bonjour,
Jeune autodidacte perds ses cheveux...

Voici mon problème :

Je cherche a verifier par une macro si l'utilisateur de mon interface a
bien rentré un bon format de chaine de caratère.
En fait le format est de ce type : 567-54-432
En fait seul les 2 tirets sont constants et le groupe de chiffre peux
varier entre chaque... je en veux pas vérifier qu'il a bien rentrer CE
chiffre mais bien une suite de caractère correspondant à ce format...
J'ai un niveau de VBA moyen moins et même si j'ai un bon livre bah...
y'as pas tout et c'est pas forcément explicite...

Merci à vous tous d'avance...


Laurent
Le #5284761
MErci Daniel je vais essayer je tiens au courant... :)

"Daniel.C" news:
Bonjour.
Essaie (la chaine étant en A1) :

Sub test()
tablo = Split([A1], "-")
If UBound(tablo) <> 2 Then
MsgBox "Saisie incorrecte"
End If
If Not IsNumeric(tablo(0)) Or _
Not IsNumeric(tablo(1)) Or _
Not IsNumeric(tablo(2)) Then
MsgBox "Saisie incorrecte"
End If
End Sub

Cordialelement.
Daniel
"Laurent "
Bonjour,
Jeune autodidacte perds ses cheveux...

Voici mon problème :

Je cherche a verifier par une macro si l'utilisateur de mon interface
a bien rentré un bon format de chaine de caratère.
En fait le format est de ce type : 567-54-432
En fait seul les 2 tirets sont constants et le groupe de chiffre peux
varier entre chaque... je en veux pas vérifier qu'il a bien rentrer CE
chiffre mais bien une suite de caractère correspondant à ce format...
J'ai un niveau de VBA moyen moins et même si j'ai un bon livre bah...
y'as pas tout et c'est pas forcément explicite...

Merci à vous tous d'avance...






Laurent
Le #5284751
En fait je n'ai pas été assez clair :
la structure est ainsi : YYYYYY-XX-X avec : Y : 3 à 6 chiffres.
et moi je veux verifier que l'entrée correspond bien a ca... voila

"isabelle" a écrit dans le message de
news:%
bonjour Laurent,

je ne suis pas sur de bien saisir ta demande,
est ce qu'il peut y avoir 5 chiffres tiret 4 chiffres tiret 8 chiffres
ou bien c'est constant 3 chiffres tiret 2 chiffres tiret 3 chiffres ?

isabelle

Bonjour,
Jeune autodidacte perds ses cheveux...

Voici mon problème :

Je cherche a verifier par une macro si l'utilisateur de mon interface
a bien rentré un bon format de chaine de caratère.
En fait le format est de ce type : 567-54-432
En fait seul les 2 tirets sont constants et le groupe de chiffre peux
varier entre chaque... je en veux pas vérifier qu'il a bien rentrer CE
chiffre mais bien une suite de caractère correspondant à ce format...
J'ai un niveau de VBA moyen moins et même si j'ai un bon livre bah...
y'as pas tout et c'est pas forcément explicite...

Merci à vous tous d'avance...




Laurent
Le #5284711
Bien C'ets ok tout fonctionne merci DAniel

J'ai encore appris quelque chose encore sur VBA aujourd'hui ;)

"Laurent " news:
MErci Daniel je vais essayer je tiens au courant... :)

"Daniel.C" news:
Bonjour.
Essaie (la chaine étant en A1) :

Sub test()
tablo = Split([A1], "-")
If UBound(tablo) <> 2 Then
MsgBox "Saisie incorrecte"
End If
If Not IsNumeric(tablo(0)) Or _
Not IsNumeric(tablo(1)) Or _
Not IsNumeric(tablo(2)) Then
MsgBox "Saisie incorrecte"
End If
End Sub

Cordialelement.
Daniel
"Laurent "
Bonjour,
Jeune autodidacte perds ses cheveux...

Voici mon problème :

Je cherche a verifier par une macro si l'utilisateur de mon interface
a bien rentré un bon format de chaine de caratère.
En fait le format est de ce type : 567-54-432
En fait seul les 2 tirets sont constants et le groupe de chiffre peux
varier entre chaque... je en veux pas vérifier qu'il a bien rentrer CE
chiffre mais bien une suite de caractère correspondant à ce format...
J'ai un niveau de VBA moyen moins et même si j'ai un bon livre bah...
y'as pas tout et c'est pas forcément explicite...

Merci à vous tous d'avance...









Laurent
Le #5284701
Sujet clos Daniel m'as bien aidé sur le coup
Merci a tout ceux qui ont refléchis a mon problème !!! :)
"Laurent " news:
Bonjour,
Jeune autodidacte perds ses cheveux...

Voici mon problème :

Je cherche a verifier par une macro si l'utilisateur de mon interface a
bien rentré un bon format de chaine de caratère.
En fait le format est de ce type : 567-54-432
En fait seul les 2 tirets sont constants et le groupe de chiffre peux
varier entre chaque... je en veux pas vérifier qu'il a bien rentrer CE
chiffre mais bien une suite de caractère correspondant à ce format...
J'ai un niveau de VBA moyen moins et même si j'ai un bon livre bah...
y'as pas tout et c'est pas forcément explicite...

Merci à vous tous d'avance...


isabelle
Le #5284691
Sujet clos Daniel m'as bien aidé sur le coup
Merci a tout ceux qui ont refléchis a mon problème !!! :)


ha bon, j'avais mal compris Laurent, je croyais que seul le paquet de "y" était de longueur variable
et que les 2 paquets de "x" étaient fixe, un à 2 caractères et l'autre à 1 caractère.

isabelle

Laurent
Le #5284661
Si si Isabelle c'est bien ca...
le paquet de y est variable...
Mon souci etait juste au niveau de la fonction split que je ne connaissais
pas et forcément... c'est otu de suite plus dur
maintenant que je connais cette fonction je peux traiter comme je veux et
fair eles comparaisons nécéssaires ^^
du coup bah voila .. .
Ca accélère aussi beaucoup mes macro de comparaison puisque je peux comparer
par groupe de chiffre du coup ^^
Merci quand même a toi d'avoir été aussi prompte...

"isabelle" a écrit dans le message de
news:


Sujet clos Daniel m'as bien aidé sur le coup
Merci a tout ceux qui ont refléchis a mon problème !!! :)


ha bon, j'avais mal compris Laurent, je croyais que seul le paquet de "y"
était de longueur variable
et que les 2 paquets de "x" étaient fixe, un à 2 caractères et l'autre à 1
caractère.

isabelle



Publicité
Poster une réponse
Anonyme