Problème de condition sous VBA & excel 2007

Résolu/Fermé
ice_dj03 - 17 avril 2008 à 13:54
ice_dj03 Messages postés 12 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 23 février 2009 - 18 avril 2008 à 21:53
Bonjour,

je suis en train de créer une matrice sous excel en VBA.
j'ai appris tout seul avec un bouquin, désolé si le code est un peu lourd...

en fait pour faire simple, j'ai créer une UserForm qui demande un identifiant, mon souci, c'est que je voudrai s que plusieurs identifiants soient possible, mon userform me renvoi juste test=1 ou test=0 selon le bouton cliqué

'demande identifiant
On Error GoTo EIdentifiant
EIdentifiant:

do until identifiant = "admin"
Load USFIdentifiant
USFIdentifiant.Show
If test = 0 Then

Exit Sub

End If

loop

jusque la pas de problème, lorsque je rajoute la condition suivante, ca ne fonctionne plus

do until identifiant = "admin" or "2580"

Load USFIdentifiant
USFIdentifiant.Show
If test = 0 Then

Exit Sub

End If

loop
A voir également:

3 réponses

bonjour,

If test = 0

Montre nous ce qui fait que test=0 ou autre chose.
En fait, c'est le code de USFIdentifiant qui est interessant pour résoudre ton problème.
A+.
0
re,

alors voici le code de mon USFIdentifiant
____________________________________
Private Sub TextBox2_Change()

Identifiant_Produit = USFIdentifiant.TextBox2

End Sub
la valeur rentrer dans le textbox charge ma variable
__________________________________
Private Sub CommandButton1_Click()

test = 1

Unload USFIdentifiant

End Sub
'le bouton ok renvoi 1 et decharge l'USF
____________________________________
Private Sub CommandButton3_Click()

test = 0

Unload USFIdentifiant

End Sub
'le bouton annuler renvoi 0 et decharge l'USF
______________________________________

je n'est tjs pas de solution pour avoir des "or" qui fonctionne dans ma condition

merci d'avance de votre aide a tous....
0
Bonjour,

Je n'arrive pas à suivre ta logique , ce qui fait que identifiant prend la valeur "admin" ou " 2580" à la fermeture de USFIdentifiant . Mais pour le test

do until identifiant = "admin" or "2580"

il faut l'ecrire

do until ((identifiant = "admin") or (identifiant = "2580"))

J'espère que ça règlera ton problème.

A+.
0
ice_dj03 Messages postés 12 Date d'inscription jeudi 17 avril 2008 Statut Membre Dernière intervention 23 février 2009
18 avril 2008 à 21:53
re,

merci beaucoup, meme sans comprendre ma logique tu a résolu mon problème, et pas que celui ci, car ce fameux "or" va beaucoup me servir...

enorme merci "amigo"

a ciao bonsoir !!
0