我在E6,F6到P6栏中有值,我从中获得R6到U6行的季度平均公式。在第7行和第8行,我有另一个数据,在第9行,我有数据,我需要使用平均公式。同样,我有数据需要分别从第6,9,12,15行平均。因此,任何人都可以帮我编写宏公式,每次留下2行
下面是我为
写的宏Dim LastRow As Long
LastRow = .Cells(.Rows.Count, "C").End(xlUp).Row
.Range("R6:R" & LastRow).Formula = "=if(E:E=0,0,Average(E6:G6))"
.Range("S6:S" & LastRow).Formula = "=if(G:G=0,0,Average(H6:J6))"
.Range("T6:T" & LastRow).Formula = "=if(J:J=0,0,Average(K6:M6))"
.Range("U6:U" & LastRow).Formula = "=if(M:M=0,0,Average(N6:P6))"
.Range("V6:V" & LastRow).Formula = "=if(R:R=0,0,Average(R6:U6))"
.Range("R6:V6" & LastRow).Copy
.Range("R6:V6" & LastRow).PasteSpecial xlValues
Application.CutCopyMode = False
答案 0 :(得分:2)
要计算6, 9, 12, 15
,您可以使用For
循环Step 3
Option Explicit
Public Sub Step3Example()
Dim i As Long
For i = 6 To 15 Step 3
Debug.Print i 'output: 6, 9, 12, 15
Next i
End Sub
您可以在代表i
,6
,9
和12
的公式中使用15
:
.Range("R6:R" & LastRow).Formula = "=if(E:E=0,0,Average(E" & i & ":G" & i & "))"