因此,每次我运行代码时,都会出现Types Mismatch错误,并且无法找到将其更改为正确运行内容的内容。即使这可能仍不能完全解决更大的问题,即如何将我的问题表达为vba代码,但首先要解决的问题。如何获得没有错误的这一行代码:
Range("I" & r & ":" & "I" & B).Value = Range("I" & r & ":" & "I" & B).Value + 1
其中r =代码正在检查的当前行(5到44) B是代码可以检查的最后一行(44) 我想这行要做的就是将一个加到单元格的现有值上(如果在该行中不执行任何操作,则为0;如果满足条件,则为公式,该公式将使值从1到40) / p>
答案 0 :(得分:0)
您不能像现在这样操作->您不能一次将数字添加到一系列单元格中。您必须一次将数字添加到一个单元格中。
尝试一下:
Dim i As Integer
For i = r To B
Range("I" & i).Value = Range("I" & i).Value + 1
Next
要处理公式:
Dim i As Integer
For i = r To B
Dim numberToAdd As Integer
numberToAdd = 1
If Range("I" & i).HasFormula Then
Range("I" & i).Value = Range("I" & i).Formula & "+" & Trim(Str(numberToAdd))
Else
Range("I" & i).Value = Range("I" & i).Value + 1
End If
Next