VBA程式設計中,如何簡化If語句中OR選項

2021-04-18 07:56:02 字數 3447 閱讀 8733

1樓:匿名使用者

if基本用法是bai:

if 條件du1 then語句段

zhiend if

或:if 條件1 then

語句段1

else

語句段2

end if

這樣使用if語句,就可以使

dao程式有內選擇性的執行**容。

注意,if語句一定要有判斷條件和執行語句,最後用 end if 結尾。但如果執行語句只有一條,就可以縮成一行,不必再寫end if。如:

if 條件1 then 語句1

或:if 條件1 then 語句1 else 語句2if與and,or用法

if 變數1=條件a then

if 變數2=條件b or 變數2=條件c or 變數2=條件d then

......

end if

end if

只用一個if

if (變數1=條件a and 變數2=條件b) or (變數1=條件a and 變數2=條件c) or (變數1=條件a and 變數2=條件d) then

…………

end if

2樓:匿名使用者

用instr語句,instr(1,"|q|b|ic1|","|" & v_func & "|")>0

字串給寫了三個,自己補全。

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

3樓:風一樣的某某某

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

excel 關於vba中if多條件語句的用法,虛心求教

4樓:陽光上的橋

vba中的多條件if,一般有兩種情況:

一是使用and、or連線多個條件,例如:

if a1=1 and a2=2 or a2="" then二是使用if巢狀,例如:

if a1=1 then

if a2=2 then ... else ...

else

if a2="" then ... else ...

end if

5樓:匿名使用者

if語句的語法:

if 條件

判斷語句1 then

處理語句a

elseif 條件判斷語句2 then

處理語句b

else

處理語句c

end if

其中,條件判斷語句需要使用判斷符,常用的判斷符有「==」(相等)、「>」(大於)、「>=」(大於等於)、「<」(小於)、「<=」(小於等於)、「<>」(不等於)。

如果有多個並列的條件,可以使用「and」(邏輯與)、「or」(邏輯或)來連線。

例子:if ***==*** and yyy<>yyy then<...>

elseif ***==yyy or ***<=yyy then<...>

else

<...>

end if

補充:如果有多條並列條件,且要混用or和and,不妨使用括號。

6樓:匿名使用者

1、if語句的含義:if語句字面意思就是如果的意思,如果條件為真,那麼就執行if語句裡面的程式,這個程式,一般指then後面的,一個if語句可以沒有end if,但絕對不能沒有then,這一點是要注意的。

2、if……then……結構

該結構一般用於比較簡單的判斷語句執行,下面以一段例項程式來講解。

例項:如果第一個單元格不為空,那麼就彈出一個提示框「單元格不為空」。

程式:sub 判斷語句()

if cells(1, 1) <> "" then msgbox "單元格不為空"

end sub

3、if……then……end if結構

該結構用於單選擇判斷語句執行,具體用法看下面例項。

例項:對於第一列的第一行到第十行單元格,作如下判斷,如果單元格為空值了那麼在相應的第二列單元格輸出「vba教研室」。

程式:sub 判斷語句()

dim i as integer

for i = 1 to 100

if cells(i, 1) = "" then

cells(i, 2) = "vba教研室"

exit for

end if

next

end sub

4、if ……then……else……end if結構

該結構用於事件只有兩個可能的情況先選擇的判斷語句,具體見下面例項分析。

例項:對於第一列的第1,2行兩個單元格做判斷,如果單元格值為空,則在相應的第二列單元格輸出false,否則輸出ture。

程式:sub 判斷語句()

dim i as integer

for i = 1 to 2

if cells(i, 1) = "" then

cells(i, 2) = "false"

else

cells(i, 2) = "true"

end if

next

end sub

5、if ……then……elseif……then……else……end if結構

該結構用於多條件判斷語句執行,具體見下面例項分析

例項:對三名同學的成績作出判斷,大於等於80分的為優秀;60到80之間的為及格;0到60分之間的為不及格;0分為考試無效。

程式:sub 判斷語句()

dim i as integer

for i = 2 to 7

if cells(i, 2) >= 80 then

cells(i, 3) = "優秀"

elseif cells(i, 2) < 80 and cells(i, 2) >= 60 then

cells(i, 3) = "及格"

elseif cells(i, 2) < 60 and cells(i, 2) > 0 then

cells(i, 3) = "不及格"

else

cells(i, 3) = "考試無效"

end if

next

end sub

6、if語句巢狀使用

if語句可以靈活的巢狀使用的,如下面這套程式

sub 判斷語句()

sub 判斷語句()

if cells(1, 1) <> "" then

if cells(1, 1) = "vba教研室" then

msgbox "ok!"

else

msgbox "no!"

end if

end if

end sub

lua中多個ifandend語句如何簡化

還真沒啥簡化的方法,lua本身沒有提供switch語句 但是用表可以很輕鬆的實現有限狀態機,很多時候能避免反覆進行條件判斷 lua語言中 end要怎麼用?end表示是結束符 比如函式 或是迴圈 for i 1,10 do print i endfunction myprint arg print a...

如何分清日語語句中的主謂賓詞語,日語中如何找一個句子的謂語?

日語有點像中文,口語中有時主謂賓不全的。一般來說簡單句中 或 前的是主語 前是賓語,後是謂語。如 私 飯 食 我 吃 飯。動作的主體為主語 作用的對像是賓語 比如 我吃飯 飯 食 主語 飯賓語 食 謂語 另外說一下 日語跟中文是相反的 不是主謂賓 而是主賓謂 日語中如何找一個句子的謂語?謂語就是句子...

VerilogHDL程式設計中,語句nb

b這個資料的a 1位和a位賦值給n,n是一個兩位的二進位制數 c語言中c a b,a b 1 什麼意思 逗號表示式的取值,是最右邊一個表示式的值 程式先計算逗號表示式最左邊的式子a b,計算結果沒有儲存,對a,b,c的取值沒有影響 a 1,b 2 然後計算a a 2,b 2 然後計算b 1 b 1 ...