Comment affecter une condition sur un variable déclaré string?? [Résolu]

Messages postés
35
Date d'inscription
dimanche 21 mars 2010
Dernière intervention
27 mai 2010
- - Dernière réponse : cs_hirondellle
Messages postés
35
Date d'inscription
dimanche 21 mars 2010
Dernière intervention
27 mai 2010
- 7 mai 2010 à 19:30
Bonjour à tous

comment affecter une condition sur un variable déclaré string??

j'ai fais le code suivant mais ça marche pas:


dim chaine as string
...'un bout de code ici


if chaine="Employé" then
instruction
elseif chaine="Stagiaire" then
instruction
.
.
.
end if




merci d'avance
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
14322
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
14 décembre 2018
3
Merci
Bonjour,

Que contient exactement ta variable, car une simple majuscule en minuscule (ou l'inverse), un accent en plus ou en moins et ça ne match pas.

2 solutions couramment utilisées :

Ignorer la casse :
dim chaine as string
...'un bout de code ici


Select Case LCase(chaine)
    Case "employé"
'Code
    Case "stagiaire"
'Code
.
.
.
end if


Ou encore plus propre et sans risque d'erreur, en utilisant un Enum :

Public Enum eTypePersonne
    eTypePersonne_Employe
    eTypePersonne_Stagiaire
End Enum

'Du code et un début de procédure

Dim maVariable As eTypePersonne

...

Select Case MaVariable
    Case eTypePersonne_Employe
'Employé
    Case eTypePersonne_Stagiaire
'Stagiaire


Note, j'ai utilisé Select Case, car ça correspondait mieux pour ton exemple, mais ça fonctionne pareillement avec un If

Mon site

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Commenter la réponse de NHenry
Messages postés
35
Date d'inscription
dimanche 21 mars 2010
Dernière intervention
27 mai 2010
0
Merci
salut

aussi le premier code de case n'a pas fonctionné, concernant le deuxième j'ai pas bien compris, pouvez vous me rexpliquer?


merci d'avance
Commenter la réponse de cs_hirondellle
Messages postés
14322
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
14 décembre 2018
0
Merci
Bonjour,

D'après ce que j'ai compris de ton code, il sert à choisir une action en fonction de la valeur d'une variable.

Comme tu ne donne pas d'information sur quel est la source qui remplis ta variable à tester, j'en ai conclu que c'était équivalent à une numération de valeurs.

Une énumération permet de mettre un nom à une valeur entière, ça facilite la compréhension du code et évite pas mal d'erreurs.

Sinon, tu dis que les tests sur les chaines ne fonctionnent pas, as-tu vérifier les valeurs de la variable ?

Ton projet est en Option Compare
Binary ou Text ?

Mon site
Commenter la réponse de NHenry
Messages postés
35
Date d'inscription
dimanche 21 mars 2010
Dernière intervention
27 mai 2010
0
Merci
Salut

merci NHenry


ta raison j'ai mal écrit la valeur de la condition(Les majuscules sont pris en considération)



merci pour vos explications.
Commenter la réponse de cs_hirondellle

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.