vba03---do while......loop循环

1、do while 循环

while只要判断条件真假,只要条件为真就一直执行,相当于射线。

for循环,有明确的起点和终点,是线段

 
 
2-1、少数民族加五分表格
image

Sub 加分()
Dim i

i = 2

Do While Range("A" & i) <> "" 

If Range("b" & i) <> "汉" Then
Range("d" & i) = Range("c" & i) + 5
Else
Range("d" & i) = Range("c" & i)
End If

i = i + 1

Loop

 

End Sub

【】当姓名栏不为空就一直循环。。。用while就不用for数究竟有多少行了
 
 
2-2、有些整行空值,删去
【】中间的代码就是删去整行空值的
image
 
2-3、有些行可能只是暂时缺少姓名,希望能接着运行下去,不要在这里停止运行
【】将循环条件设为姓名或民族不全是空值那就能循环下去
image
 
 
3、求和、求平均值
单独设置一个累加器
image
【】因为平均数,有分母不能为零,所以if只在计数器大于零情况下才输出
image
 
【选择性粘贴,首先复制某个单元格内容,然后选中数据群选择性粘贴运算这个单元格内容
 
4、循环嵌套外壳do while循环(不定行数),内部for循环(固定列数)

Sub 嵌套()
Dim i, j
i = 2
Do While Cells(i, 1) <> ""

    For j = 3 To 5
    Cells(i, j) = Cells(i, j) * 0.6
    Next
    
    i = i + 1

Loop

End Sub

【】cells(行i,列j)另一种单元格的表示法,
 
posted @ 2026-01-02 17:29  ibddindonon  阅读(2)  评论(0)    收藏  举报