Sub 计算加权() Dim rng As Range Dim sht As Worksheet Dim a%, b%, k%, i%, j% For Each sht In Sheets a = 5 For Each rng In sht.Range("H6:H469") If IsEmpty(rng) = True Then b = rng.Row k = b - a - 1 rng.FormulaR1C1 = "=sum(R[-" & k & "]C:R[-1]C)" With rng.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .ThemeColor = xlThemeColorLight2 .TintAndShade = 0.599993896298105 .PatternTintAndShade = 0 End With For i = 6 To 14 rng.Offset(, i).FormulaR1C1 = _ "=ROUND(SUMPRODUCT(R[-" & k & "]C:R[-1]C,R[-" & k & "]C[-" & i & "]:R[-1]C[-" & i & "])/RC[-" & i & "],0)"