vba excel统计 计算问题

来源:百度知道 编辑:UC知道 时间:2024/06/02 02:16:52
Sub text555555555555555555555555555555555()
Sheet6.Activate
Dim X, R, k, j As Integer
X = 6 '列初始值

For R = 2 To 20
If Sheet6.Cells(R, X).Value + Sheet6.Cells(R, X + 1).Value + Sheet6.Cells(R, X + 2).Value + Sheet6.Cells(R, X + 3).Value + Sheet6.Cells(R, X + 4).Value <> 0 Then
Sheet6.Cells(R, X + 5).Value = Sheet6.Cells(R, X).Value
Sheet6.Cells(R, X + 6).Value = Sheet6.Cells(R, X + 1).Value
Sheet6.Cells(R, X + 7).Value = Sheet6.Cells(R, X + 2).Value
Sheet6.Cells(R, X + 8).Value = Sheet6.Cells(R, X + 3).Value
Sheet6.Cells(R, X + 9).Value = Sheet6.Cells(R, X + 4).Value
Else
Sheet6.Cells(R, X + 5).Value = 0
Sheet6.Cells(R, X + 6).Value = 0
Sheet6.Cells(R, X + 7).Value = 0
Sheet6.Cells(R, X + 8).Value = 0
Sheet6.Cells(R, X + 9).Value = 0
End If
If Sheet6.Cells(R, X).Value + Sheet6.Cells(R, X + 1).Value + Sheet6.Cells(R, X + 2).Value +

你前面的语句没有问题,可以简化为
X = 6
For R = 2 To 20
If WorksheetFunction.Sum(Range(Cells(R, X), Cells(R, X + 4))) > 0 Then
Range(Cells(R, X + 5), Cells(R, X + 9)) = Range(Cells(R, X), Cells(R, X + 4)).Value
Else
Cells(R, X + 5) = WorksheetFunction.Sum(Range(Cells(R, X), Cells(R, X + 4)))
Range(Cells(R, X + 6), Cells(R, X + 9)) = 0
End If
Next
后面 For k = 5 To 9以后的语句有问题,变量J是干嘛的看不懂。