IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Vérification de la présence de caractères accentués


Sujet :

VBScript

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Vérification de la présence de caractères accentués
    Bonjour,
    étant étudiant en alternance, il m'a été confié dans ma boite la rédaction d'une fonction que mon tuteur implémentera dans son script. Etant plutôt orienté réseau, je suis un peu perdu avec le vbs.

    Actuellement, le script vérifie que certaines conditions sont bien remplie lors de la création d'un compte sur l'AD.

    Je dois développer la fonction suivante : checker qu'aucun caractère accentué ne soient présent dans le nom et prénom de l'utilisateur crée ou de l'utilisateur à checker. Si de tel caractères sont présent, afficher un message de warning.
    Si une âme généreuse pouvait me venir en aide, avec quelques conseil, ou me dire par où commencer ça serait super !

    Merci !

  2. #2
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    Tu peux boucler sur les caractères de chaque chaine, puis tester si ces caractères sont bien compris entre A et Z et entre a et z
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    For i = 1 to Len(MaChaine)
       If Asc(mid(MaChaine, i, 1)) >= 65 and Asc(mid(MaChaine, i, 1)) <= 90 then
          Test = "OK"
       elseIf Asc(mid(MaChaine, i, 1)) >= 97 and Asc(mid(MaChaine, i, 1)) <= 122 then
          Test = "OK"
       else
          Test = "KO"
       end if
    Next
    MsgBox Test

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci pour ce retour rapide!

    Une autre question viens à moi, à la place de "MaChaine" est il possible de renseigner un attribue dans l'AD ( à savoir -> l'attribu cn ou name) ?

    Merci encore pour cette réponse.

  4. #4
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 839
    Points : 9 222
    Points
    9 222
    Par défaut
    Citation Envoyé par Socrvvte Voir le message
    Merci pour ce retour rapide!
    Une autre question viens à moi, à la place de "MaChaine" est il possible de renseigner un attribue dans l'AD ( à savoir -> l'attribu cn ou name) ?
    Merci encore pour cette réponse.
    Peut-être tu veux dire comment l’appeler par une fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Function Check(MaChaine)
    For i = 1 to Len(MaChaine)
       If Asc(mid(MaChaine, i, 1)) >= 65 and Asc(mid(MaChaine, i, 1)) <= 90 then
          Test = "Le nom est accepté !"
       elseIf Asc(mid(MaChaine, i, 1)) >= 97 and Asc(mid(MaChaine, i, 1)) <= 122 then
          Test = "Le nom est accepté !"
       else
          Test = "le Nom Contient un caractère non OK"
       end if
    Next
    MsgBox Test
    End Function
    Data = InputBox("check","check","check")
    Check Data

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    C'est parfait!
    Merci beaucoup messieurs !

  6. #6
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    Sur une remarque de pc75 que je salue par la même occasion, les caractères(voyelles) peuvent contenir des trémas. Pour cela, on peut utiliser ce
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    Option Explicit
    Dim arrAccents, Cnt, Ret, Msg, i 'Déclaration des variables
    ' arrAccents : Un tableau contenant les codes ASCII des caractères accentués ou ayant 
    ' un tréma(2 points sur le caractère), j'ai opté pour ce procédé car mon système est BIDI et 
    ' m'affiche des bizarreries
    arrAccents =Array(192,194,196,200,201,202,203,206,207,212,217,219,220,224,226,228,232,233,234,235,238,239,244,246,249,251,252)
     
    Msg = InputBox("Saisir une chaîne de caractères : ","Chaîne à scanner :","Chaîne")
    If Msg = "" Then WScript.Quit
    CheckAccent Msg
    '==============
    Private Sub CheckAccent(strIn)
        Dim Trouve
    	For Cnt = 0 To Ubound(arrAccents)
    	   For i = 1 To Len(strIn)
    	      Trouve = (Chr(arrAccents(Cnt)) = Mid(strIn,i,1))
    		  If Trouve Then 
    		    Ret = Mid(strIn,i,1)
    		    MsgBox "Il y a un caractère accentué non autorisé [ " & Ret & " ]"  & " trouvé à la position " & Cstr(i) & " de la saisie." _
    	               & VbCrLf & " Veuillez vérifier votre orthographe."
    			Exit For
    		  End If	
    	   Next
        Next	   
    End Sub
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Vérification de présence de caractère
    Par cyrux dans le forum VB.NET
    Réponses: 6
    Dernier message: 02/03/2009, 14h27
  2. [SQL] Requête SQL et présence de caractères accentués
    Par Silvia12 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 07/09/2007, 10h51
  3. Chaînes avec des caractères accentués dans Interbase
    Par François Marliac dans le forum Bases de données
    Réponses: 2
    Dernier message: 04/03/2004, 22h39
  4. [PostgreSQL] Les caractères accentués ?
    Par yacomor dans le forum Requêtes
    Réponses: 2
    Dernier message: 18/02/2003, 16h30
  5. insérer des caractères accentués INFORMIX/JDBC
    Par donde dans le forum Informix
    Réponses: 2
    Dernier message: 19/11/2002, 20h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo