Excel宏用于平均值

时间:2014-09-17 13:00:21

标签: excel vba average

我的VBA脚本有问题。我想解决方案很简单,但我无法弄明白......

基本上,我有一个包含许多工作表的工作簿。每个工作表包含完全相同的表格格式(相同的行数和列数)。我想要做的是创建一个新的工作表,并在该工作表中,获得所有这些值的平均值。

因此,例如在单元格B2中,我希望从所有其他工作表中获得平均单元格B2。因此我创建了一个执行此操作的宏,这不是问题,但问题是,在该宏中,所有工作表都是通过其名称引用的,因为我有许多这些工作簿具有不同命名的工作表,这不起作用。因此,我试图将第一张纸的名称改为纸张的实际参考 - 即纸张(1),最后一张更改为纸张(x) - 其中x是我先前计算的纸张数量。不幸的是,代码不起作用,任何人都可以建议我如何修改它,以便它正常工作?我只是复制代码中有问题的部分:

x = Sheets.Count
Sheets.Add After:=Sheets(x)
Range("B2").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(Sheets(1):Sheets(x)!RC)"

1 个答案:

答案 0 :(得分:2)

试试这个。你没有说明你的工作表名称(事实上,你甚至没有使用工作表名称。在公式的上下文中,Sheets(1)没有意义。你需要使用{{1并适当地抵消它:

Sheets(1).Name