For loop 使用do INTING VBA嵌套for循环

For loop 使用do INTING VBA嵌套for循环,for-loop,nested-loops,until-loop,For Loop,Nested Loops,Until Loop,这就是我想做的:我在第(D)列有StockOH,我想知道每一笔金额可以支付多少天的销售额。例如,如果D2中的stockOH值大于E2:E5值之和,但小于总和(E2:E6),这意味着我可以完成4天的销售 我正在使用嵌套到for循环的Do until函数。我不知道为什么第一个结果是正确的,而下一个结果是错误的 Private子工作表\u selection更改(ByVal目标作为范围) y、x、S尺寸为双精度 '循环遍历D列中的库存值 对于y=2到5 “获得每一笔股票 Ssellout=单元格(y

这就是我想做的:我在第(D)列有StockOH,我想知道每一笔金额可以支付多少天的销售额。例如,如果D2中的stockOH值大于E2:E5值之和,但小于总和(E2:E6),这意味着我可以完成4天的销售

我正在使用嵌套到for循环的Do until函数。我不知道为什么第一个结果是正确的,而下一个结果是错误的

Private子工作表\u selection更改(ByVal目标作为范围)
y、x、S尺寸为双精度
'循环遍历D列中的库存值
对于y=2到5
“获得每一笔股票
Ssellout=单元格(y,5).值
x=y
“当卖出总额高于stockOH时,找到突破点。”
直到单元格(y,4)为止。值
我最终使用FOr循环和Do While函数进行了管理

这是密码

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim x, y As Integer

Dim sellout, stock As Double

For y = 0 To 4

'Define counter for sum IMPORTANT it should be inside the for loop
sellout = 0
x = 2

Do While Cells(2 + y, 4).Value > sellout

sellout = sellout + Cells(x + y, 5).Value
Cells(2 + y, 6).Value = x - 2
x = x + 1
Loop

Next


End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim x, y As Integer

Dim sellout, stock As Double

For y = 0 To 4

'Define counter for sum IMPORTANT it should be inside the for loop
sellout = 0
x = 2

Do While Cells(2 + y, 4).Value > sellout

sellout = sellout + Cells(x + y, 5).Value
Cells(2 + y, 6).Value = x - 2
x = x + 1
Loop

Next


End Sub