首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >vbScript - Do While Not "Or“

vbScript - Do While Not "Or“
EN

Stack Overflow用户
提问于 2012-11-22 02:56:42
回答 2查看 13.4K关注 0票数 0

我知道我昨天以某种方式使它工作,但一天结束时,我错误地关闭了更改而没有保存。今天我不知道我做错了什么。我和InputBox有一个循环,只想接受两个可能的答案,在这种情况下,苹果或橙色应该退出循环。

代码语言:javascript
复制
    Do
    myValue = InputBox("Enter something")
    Loop While Not myValue = "apple" Or myValue = "orange"

如果输入的是第一个值,而不是第二个值,则上面的代码只会退出循环。如果我为第二个值添加一个"Not“,就像下面这样,那么无论我输入什么,它都不会退出循环。

代码语言:javascript
复制
    Do
    myValue = InputBox("Enter something")
    Loop While Not myValue = "apple" Or Not myValue = "orange"

我知道这必须是显而易见的,但我想我已经看了太久的相同的代码来理解它。谢谢你的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-22 03:00:40

你可能想要一个and

代码语言:javascript
复制
Do
myValue = InputBox("Enter something")
Loop While Not myValue = "apple" And Not myValue = "orange"

不是and和Not ors是令人困惑的,但如果你通读它,你会弄清楚的。示例输入: apple

NOT "apple" = "apple"FALSENOT "apple" = "orange"TRUE。如果使用OR,则TRUE or FALSE的计算结果为TRUE。因此,循环会继续。但是,如果使用AND,则整个语句的计算结果为FALSE,这允许退出。

票数 1
EN

Stack Overflow用户

发布于 2012-11-22 03:16:34

为什么不把英语翻译成VBScript:

代码语言:javascript
复制
I want to ask the user until the input is "apple" or "orange"

==>

代码语言:javascript
复制
  Dim sInp
  Do
     sInp = InputBox("Enter something")
     WScript.Echo "+", sInp
  Loop Until sInp = "apple" Or sInp = "orange"
  WScript.Echo sInp

示例输出:

代码语言:javascript
复制
+ banana
+ apple
apple
=============

+ pear
+ orange
orange
=============
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13500165

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档