Vba 跨工作表的单元格求和

Vba 跨工作表的单元格求和,vba,excel,Vba,Excel,我对编程非常陌生,所以这可能是一个明显的问题。我有一份关于饮酒习惯的调查问卷。我正在尝试制作一个应用程序,用于计算所有工作表(参与者回答)的平均值等。到目前为止,我的代码允许我将工作表的总数作为参与者的回答数,但它只提供当前打开的工作表的平均值。我需要在下面的代码中添加什么才能获得所有回答(工作表)的总平均值 代码: 您的for循环实际上什么都不做。。。。您也可以在一个子系统中完成这一切(不确定为什么要使用函数)。一旦您更新了TBwk1MEAN以更改每个循环,这将完成您想要的操作 Sub PAR

我对编程非常陌生,所以这可能是一个明显的问题。我有一份关于饮酒习惯的调查问卷。我正在尝试制作一个应用程序,用于计算所有工作表(参与者回答)的平均值等。到目前为止,我的代码允许我将工作表的总数作为参与者的回答数,但它只提供当前打开的工作表的平均值。我需要在下面的代码中添加什么才能获得所有回答(工作表)的总平均值

代码:


您的for循环实际上什么都不做。。。。您也可以在一个子系统中完成这一切(不确定为什么要使用函数)。一旦您更新了
TBwk1MEAN
以更改每个循环,这将完成您想要的操作

Sub PARTcounter() 'to count the open questionaires
    TBTOTpar = ThisWorkbook.Worksheets.Count
End Sub


那么您需要所有工作表中的
C3:I9
平均值吗?你需要根据任何条件来做吗?或者,如果您需要1周的平均值,是否需要将其输入到函数中并与工作表上的范围相匹配?另外-您的下一步计数器的
没有任何作用。
Sub PARTcounter() 'to count the open questionaires
    TBTOTpar = ThisWorkbook.Worksheets.Count
End Sub
Sub SUMwk11() 'finds mean for week 1
    Dim ws As Worksheet

    For each ws in ThisWorkbook.Worksheets
        ' You'll need to update this each loop otherwise the mean from each sheet will overwrite the previous one.
        TBwk1MEAN = Application.SUM(ws.Range("c3:i9")) / 7
    Next ws
End Sub