求EXCEL用VBA的IF條件語句與FOR迴圈語句的基本語法,不要複製貼上,要最簡單說明下就行了

2021-03-27 08:26:48 字數 4360 閱讀 8293

1樓:陽光上的橋

最簡單的來兩句,不明白請追問~~~

for的用法是這樣的:

for i=1 to n

......語句......

next i

這樣的功能是,使裡面的 語句 執行n次,每次i的值都不同,分別是1~n,用來完成固定次數的重複。

if的用法是這樣的:

if 條件 then

.......語句1.......

else

......語句2......

end if

這樣的功能是判斷條件是否滿足,如果滿足就執行 語句1,否則執行 語句2

以上例子中的語句、語句1、語句2都可以是一個或者多個語句,往往是一段。

2樓:匿名使用者

if語句有兩種用法,語句式和塊式:

語句式:

if 條件 then 條件為真的執行結果 [else 條件為假時的執行結果]

'號中間的可以視情況省略

如:if range("a1")=1 then range("b1")=range("a1")+100 else range("b1")=range("a1")-50

意思就是:如果a1為1時,b1=a1+100,否則,b1=a1-50

語句式使用時,中間不能有回車符號,但可以使用 _(即:空格+_+回車),如上可以寫成:

if range("a1")=1 then range("b1")=range("a1")+100 _

else range("b1")=range("a1")-50

塊式:if   條件  then

條件為真時執行的語句(可以多行)

[else

條件為假時執行的語句(可以多行)]

end if

'用括起來的,如果沒有,可以省略,但塊式,必須if。。。。then 。。。。end if 匹配,否則,將出現語法錯誤。

塊式還有一種用法:

if  條件1 then

條件1為真時執行的語句

elseif 條件2 then

條件2為真時執行的語句

elseif 條件3 then

條件3為真時執行的語句

……else

上述條件均不具備時,執行的語句

end if

尤其要注意的是,採用塊式後一種,各條件之間必須是相同專案的比較,並且條件之間的邏輯必須閉合,否則就可能會出現計算錯誤。

if 還有一種函式方式的用法:

iif(條件,為真時返回的結果,為假時返回的結果)

'用法與工作表函式if()一樣。

for的語法:

for 自定義變數=初始值 to 終止值 [step 步長]

自定義變數每增加(或減少)一個步長要執行的語句(可以多句)

[exit for]

next

如果初始值《終止值,且步長為1,則step 步長可以省略

步長可以是正數(初始值必須小於等於終止值),或者負數(起始值必須大於等於終止值)

eixt for 表示可以根據執行結果隨時退出迴圈。

for。。。。next必須配對使用,不能簡化

一般地,for ....next 和 if語句組合使用

3樓:匿名使用者

if 條件 then

執行語句

else

執行語句

end if

可以省略else

for 變數=初始值 to 最終值 step 步長值執行語句

next 變數

如果步長值為1,可以省略「step 步長值」

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

請懂VBA的朋友幫我用VBA在excel裡面編寫個計算器,只要加法的就可以了

private sub worksheet selectionchange byval target as range if f6 then exit sub static temp static w,j r1 target.row c1 target.column if r1 2 and r1 7...

excel 用VBA設定A列自動顯示當天的日期!

如果需要對多個單元格自動顯示當天日期,那麼選擇單元格區域,輸入以下公式,然後按ctrl enter組合鍵結束。today 快速生成當天日期,且該日期隨著系統時間的變化而變化。詳見附圖。if or b1 c1 d1 now 這個 應該是可以的 如果是顯示數字應該是單元格格式的問題,右鍵單元格格式,選擇...

ecel用vba時出現執行錯誤,excel用vba時出現執行錯誤6 溢位,請幫忙看下我的程式是不是有問題

dim語句中的integer都改為bailong,因為integer正數最大為du32767 另外,大量迴圈應zhi該考dao 慮將 讀入陣列,用陣列參 內與迴圈,提高 容速度。比如使用語句 a1 worksheets 樣本1 usedrange 則生成a1陣列,a1 i,1 就相當於cells i...