我有一个非常基本的代码,该代码分配给从单元格H6中的值减去1的形状。我无法弄清楚的是如何停止单元格值降至0以下。
我在下面的-1处尝试过,但是由于最小值部分,代码一直在出错
Sub RoundedRectangle27_Click()
Cells(6, 8).Value = Cells(6, 8).Value - 1
IF cell(H6, <=0 Then = 0)
End Sub
Sub RoundedRectangle27_Click()
Cells(6, 8).Value = Cells(6, 8).Value - 1
IF cell(H6, <=0 Then = 0)
End Sub
我不希望单元格值低于0,因为我有一个VLOOKUP链接到它。随后,我还需要该值不大于8
答案 0 :(得分:0)
if
应该排在第一位:
sub RoundedRectangle27_Click()
if Cells(6, 8).Value > 0 then
Cells(6, 8).Value = Cells(6, 8).Value - 1
end if
end sub
那样,无论您对RoundedRectangle27
的努力程度如何,都永远不会消极。
您可以使用类似的方法来防止增加到8以上,但您可能可能要考虑重构以便重新使用:
function AdjustBy(value, delta, clampMin, clampMax)
if value + delta > clampMax then
AdjustBy = clampMax
else
if value + delta < clampMin then
AdjustBy = clampMin
else
AdjustBy = value + delta
end if
end if
end function
sub DecreaseButton_Click()
Cells(6, 8).Value = AdjustBy(Cells(6, 8).Value, -1, 0, 8)
end sub
sub IncreaseButton_Click()
Cells(6, 8).Value = AdjustBy(Cells(6, 8).Value, 1, 0, 8)
end sub
sub DoubleButton_Click()
Cells(6, 8).Value = AdjustBy(Cells(6, 8).Value, Cells(6, 8).Value, 0, 8)
end sub