vba後為何兩個and結果不正確

2021-04-28 17:36:20 字數 1718 閱讀 9489

1樓:匿名使用者

1、sub i90()

doi = inputbox("請輸入數字列號")if (isnumeric(i) = true) thenif (i > 0 and i * 1 = fix(i)) then 『如果連著的,對非數值進行數

版**算就會出錯。權

msgbox "是正整數"

exit do

else

msgbox "不是正整數"

end if

else

msgbox "不是數"

end if

loop

end sub

2. 效果沒區別,都是無限迴圈。只是前一個多了個 true,也就是在true時才迴圈。

2樓:匿名使用者

1 。 因為 and 兩邊 的條件表示式會都被計算。 而不是你想的 計算完左邊的第一個就不計回算別的條答件表示式了。

(i > 0 and i * 1 = fix(i)) 這個表示式正確的前提是 i是數值,所以如果i不是數值,則這個表示式會導致程式錯誤。

2. do while 。。。loop 是while條件表示式為真,迴圈就進行下去

do 。。。loop while 是 到 while 條件為真時,迴圈就停止,或者說while條件為假時,迴圈就一直進行

3樓:青水蛙鳴

用兩層if 巢狀吧

baiif isnumeric(i) thenif i*1=fix(i) then

msgbox "是正整數

du"else

msgbox "是負整數"

end if

else

msgbox "輸入不正確zhi"

end if

ps:如果你dao**沒經過刪減就是

回這樣子的話,答可以不要do  loop,if語句就足夠了isnumeric()=true  '=true 可以去掉不要and 是邏輯運算子,其運算順序在比較符(=)之後,所以if 的兩個條件可以不要加()

vba表示式2<3and not1結果為什麼是ture呢?或者說為什麼是-1?

4樓:手機使用者

not 1 通過位比較,應該得到-2 任何非0值,在邏輯中,都認為是true

vba中*是and嗎,+是or嗎 5

5樓:魚木混豬喲

在vba中:

*是四則運算的乘號,也是like等函式中的萬用字元;

+是四則運算中的加好,也是字串連線符號,與&類似。

6樓:匿名使用者

*是四則運算的乘

+可以是 加 也可以是字串連線符號

非0為true 0為false

7樓:匿名使用者

vba中在做邏輯運算時,and 是 and,or是or,

在做數**算時,* 是乘法,+是加法,

在做字元操作時,+是字串連線符

vba**中,如何簡化and後括號內的語句,選項太多,用了很多or。

8樓:風一樣的某某某

可以用字串函式instr簡化,or 後面用一個格式化字串常量 如 "#q#b# ",用instr(1, 字串常量, "#" & v_func & "#")>0 即可

俗話說不孝有三無後為大但不知其餘兩個為何呀請賜教

不孝有三 阿意曲從,陷親不義,一不孝也 家貧親老,不為祿仕,二不孝也 不娶無子,絕先祖祀,三不孝也。三者中無後為大。解釋1 一味順從,見父母有過錯而不勸說,使他們陷入不義之中,這是第一種不孝。家境貧窮,父母年老,自己卻不去當官吃俸祿來供養父母,這是第二種不孝。不娶妻生子,斷絕後代,這是第三種不孝。也...

C程式 兩個相似程式的不同結果

上邊的程式原因在於 陣列b沒有初始化。其結果是不確定的。可在定義b的時候初始化,即 char b 100 而這樣還會出現一個問題,也就是scanf輸入的問題,它只會保留空格之前的字串,也就是如果輸入 i love you 僅是將i儲存到了陣列b中,若想達到第二個程式的效果,可以用 gets函式。in...

兩個不同城市的戀人該如何結果

不同城市的戀人幾乎只有一個結局 你也是知道的!但是你也不能因為這些放棄自己的事業!其實這個問題就是女的一般會使用的考驗技聊,你是不是真的愛我的。當然大家都想待在家鄉。都不願意放棄,最後肯定是兩敗俱傷。何不,用另外一種方法,試她一試。大家都不在家鄉,而是選擇一個在你們兩個家中間的位置工作的地方。有舍有...