gpt4 book ai didi

vba - 如果 VBA 中满足条件,则减少负载

转载 作者:行者123 更新时间:2023-12-03 03:18:35 25 4
gpt4 key购买 nike

我是 VBA 新手,正在研究一个装有电动汽车负载的 table 。我必须检查一些条件,如果条件不满足,则应减少车辆负载。

我有以下代码,但不是减少负载,例如。从 11 到 10 或 9 等,它只是从表中删除负载。附上起始案例和运行代码后的屏幕截图。

有人可以帮忙修改一下代码吗?

Sub loopwork()    
Column = 215
Row = 1097
columnmove = 109

For Column = 215 To 315
columnmove = columnmove + 1

For Row = 1097 To 1192
columnload = Column - columnmove
Cells(Row, Column).Select
Cells(Row, Column - 211).Select
Cells(Row, columnload).Select
self = Cells(Row, Column)
firstcheck = Cells(Row, Column - 211)
loadvalue = Cells(Row, columnload)

If ((firstcheck < -0.05 Or firstcheck > 0.05 Or loadvalue > 100) And (self > 0)) Then
Cells(Row, Column).Select
Cells(Row, Column) = Cells(Row, Column) - 1
Cells(1, 1).Select
Row = Row - 1
End If
Next
Next
End Sub

运行代码之前 before running code

运行代码后 after running code

最佳答案

看一下,

If ((firstcheck < -0.05 Or firstcheck > 0.05 Or loadvalue > 100) And (self > 0)) Then

如果 self > 0 并且其他条件之一为 true,则将 self 减少 1(例如 Cells(Row, Column) = Cells(Row, Column) - 1 code>) 并将 For ... Next 迭代器调整为 -1,以便重复相同的循环。

但是,您无需更改 firstcheck 或 loadvalue 的值,因此如果它通过了一次 If 测试,它将继续通过 If 测试,直到 self 不大于 0。

这就是为什么一旦 self 为零或正如您所说的那样,循环就会退出“它只是从表中删除负载”

关于vba - 如果 VBA 中满足条件,则减少负载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52253686/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com