如何解决使用If语句执行while循环,当条件满足时添加一个值
我正在寻找一个do while循环,以在cellcert,4
上输入一个数字,并在cellcert,5
上返回一个值。但是,如果cellcert,4
的值大于1,则它将为每个“ 1”加5,因此其if逻辑如下:
1 = 18、2 = 18 + 5、3 = 18 + 5 + 5、4 = 18 + 5 + 5 + 5等...
这就是为什么我要考虑合并单独的函数来添加5个代码并在Sub TATcomputation()
内调用它的原因
Sub TATcomputation()
Dim certcell As Integer
certcell = 2
Do While Cells(certcell,4).Value <> ""
Cells(certcell,5).Value = Cells(certcell,4).Value * 18
certcell = certcell + 1
Loop
End Sub
解决方法
怎么样:
Sub TATcomputation()
Dim certcell As Integer
certcell = 2
Do While Cells(certcell,4).Value <> ""
If certcell = 2 Then
Cells(certcell,5).Value = Cells(certcell,4).Value * 18
Else
Cells(certcell,4).Value * (18 + (5 * (certcell - 2)))
End If
certcell = certcell + 1
Loop
End Sub
,
您在这里不需要IF
语句。始终总是从18开始,然后将Column D
(小于1)中的单元格值乘以5
'Do While....
Cells(certvalue,5).Value = 18 + ((Cells(certvalue,4) -1) *5)
'certvalue = cervalue + 1
'Loop
您应该限定那些Cells
对象或使用With
块顺便说一句
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。