我有一个带有第一行的表格,并带有学生名称的第一行,其余的细胞分数不同。
我必须在o上创建一个新的标题,该标题为平均得分。完成此操作后,我必须计算从B列到N列的所有值,然后在O。
的每一行上打印出平均值。Sub CalculateAverage()
Dim rng As Range
Dim totalsum As Double
Dim totalnum As Double
Dim answer As Double
totalsum = 0
totalnum = 0
Set rng = Cells(1, 1).CurrentRegion
For Each Sheet In Application.Worksheets
Sheet.Cells(1, 15) = "Average Score"
ActiveSheet.Cells.HorizontalAlignment = xlLeft
Next
For Each Sheet In Worksheets("Sheet1").Range("B2:N502").Cells
totalsum = totalsum + Sheet.Value
totalnum = totalnum + 1
Next
answer = totalsum / totalnum
Average = answer
Range("O2").Select
ActiveCell.FormulaR1C1 = Average()
End Sub
我在第二行的第二行中遇到了调试错误。任何人都可以帮助我解决这个问题。谢谢
Sub Macro1()
Dim rng As Range
Set rng = Range("A1").CurrentRegion
With Range("O2")
.Formula = "=AVERAGE(RC[-13]:RC[-1])"
.AutoFill Destination:=Range("O2:O" & rng.Rows.Count)
End With
End Sub
如果我这样做,我将不进行数据,从数据中进行透视,然后使用可透视。如果我安装了Addin,我将使用PowerQuery来执行此操作(并烘烤到Excel 2016(。否则,我将在Convert Cross表中使用答案中的一种方法来制作枢轴表,然后我简单地启动宏记录器,制作枢轴,然后查看并修改结果代码。