首先,我想指出我是 VBA excel 编码的初学者。
对于以下问题,我似乎不知道如何在循环中编写循环:
我的excel在D列中有以下信息:
D2:12,
D3:12,
D4:5
我试图自动化列 E 如下:
E1 到 E12 将是 D2 中的信息,
E13 到 E25 将是 D3 中的信息。等等...达到某个既定阈值。
我目前已经编写了以下代码:
Sub salairemensuelle()
Dim xrow As Integer, xcol As interger, n As Integer, nbrdecolonnedemois As Integer
xrow = 2
xcol = 4
Do Until Cells(xrow, xcol).Value >= 25 'threshold of 25
n = Range("D65536").End(xlUp).Row 'finding row of D column
For nbrdecolonnedemois = 1 To n
End Sub
我似乎被困在这里,因为我不知道如何循环第一个 D 列然后关闭两个循环。
有没有人可以看看。谢谢
最佳答案
我认为您不需要两个循环。但是,您的两个循环都没有关闭。
您关闭了 Do
与 Loop
, (或 Loop While
等)例如:
Do Until i >= 10
i = i+1
Loop
您创建一个
For
使用 Next
循环声明,例如:For i = 1 to 10
MsgBox i
Next
在您的情况下,我认为您可以使用
For ... Next
使用 Exit For
循环阈值条件获得时的语句:Sub salairemensuelle()
Dim xrow As Integer, xcol As interger, n As Integer, nbrdecolonnedemois As Integer
xrow = 2
xcol = 4
n = Range("D65536").End(xlUp).Row 'finding row of D column
For nbrdecolonnedemois = 1 To n
'The next line terminates the loop if threshold of 25 is met:
If Cells(xrow, xcol).Value >= 25 Then
Exit For
Else:
'### The rest of your code operates inside this ELSE block
End If
Next
End Sub
关于excel - VBA excel - 循环循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18456457/