vbScript - Faire, Tout en ne Pas “Ou”
Je sais que j'ai eu ce travail en quelque sorte d'hier, mais à la fin de la journée, j'ai malencontreusement fermé sans enregistrer les modifications. Aujourd'hui, je ne sais pas ce que je fais mal. J'ai une boucle avec InputBox et ne voulez accepter que 2 réponses possibles, dans ce cas, pomme ou une orange devrait sortir de la boucle.
Do
myValue = InputBox("Enter something")
Loop While Not myValue = "apple" Or myValue = "orange"
Le ci-dessus ne sortir de la boucle si la première valeur est entrée, mais pas le second. Si j'ajoute un "Non" pour le deuxième valeur en tant que bien comme la suivante, alors qu'il ne marche pas sortir de la boucle indépendamment de ce que je tape.
Do
myValue = InputBox("Enter something")
Loop While Not myValue = "apple" Or Not myValue = "orange"
Je sais que cela doit être quelque chose d'évident, mais je pense que j'ai regardé ce même code trop long pour le voir. Merci pour toute aide.
Vous devez vous connecter pour publier un commentaire.
Vous voulez probablement un
and
...Pas ands et Non en or sont déroutant, mais si vous travaillez à travers, vous allez comprendre. Exemple d'entrée: apple
NOT "apple" = "apple"
estFALSE
, etNOT "apple" = "orange"
estTRUE
. Si vous utilisez unOR
,TRUE or FALSE
évalue àTRUE
. Par conséquent, la boucle continue. Mais si vous utilisez unAND
, l'intégralité de la déclaration évalue àFALSE
, ce qui permet une sortie.Pourquoi ne pas traduire l'anglais en VBScript:
==>
exemple de sortie: