在列中查找平均值

时间:2017-11-17 04:46:37

标签: vba excel-vba excel

我想知道为什么这段代码不起作用,我得到的错误是运行时错误'6'溢出。代码将执行第一次迭代的平均值然后停止。我将附上excel电子表格的图片。我试图做的是E:((D)/(C * B))* 100,并且for循环用于迭代下一个平均列,即K.

enter image description here

Sub avgeer()    
    Dim LastAvgRow As Double
    Dim wsTarget As Worksheet '<-- O1 Filteration in my code
    Dim lngPasteOffsetCol As Double
    Dim itter As Double    

    Set wsTarget = ThisWorkbook.Worksheets("O1 Filteration")

    lngPasteOffsetCol = 0    

    LastAvgRow = wsTarget.Cells(wsTarget.Rows.Count, 1).End(xlUp).Row

    For lngPasteOffsetCol = 0 To 54
        If lngPasteOffsetCol = 0 Then
            lngPasteOffsetCol = lngPasteOffsetCol    
        Else
            lngPasteOffsetCol = lngPasteOffsetCol + 5    
        End If

        For itter = 0 To LastAvgRow - 1    
            'LastAvgRow = wsTarget.Cells(wsTarget.Rows.Count, 1).End(xlUp).Row    
            Range("E1").Offset(itter, lngPasteOffsetCol).Value = (Range("C1").Offset(itter, lngPasteOffsetCol).Value) * Range("B1").Offset(itter, lngPasteOffsetCol).Value    
            Range("E1").Offset(itter, lngPasteOffsetCol).Value = Range("D1").Offset(itter, lngPasteOffsetCol).Value / Range("E1").Offset(itter, lngPasteOffsetCol).Value        
        Next itter    
    Next lngPasteOffsetCol    
End Sub

0 个答案:

没有答案