使用VBA中的合并功能来汇总数据

时间:2017-02-09 13:43:39

标签: vba excel-vba excel

我正在尝试使用合并功能将多个工作表(名称为apple和oranges)相加,并将相同的模板合并到一个主模板中。

ConsolidateRange是标签名称和合并中使用的范围。

Master是我尝试输出总和的工作表的名称。

请参阅下面我尝试使用的代码:

ConsolidateRange = "apples!R1C1:R37C6, oranges!R1C1:R37C6"

    Worksheets("Master").Range("A1").Consolidate _
    Sources:=Array(ConsolidateRange), _
    Function:=xlSum

我得到的错误是“无法打开合并源文件' apples'。

1 个答案:

答案 0 :(得分:2)

您必须声明Variant并填写Array()函数

Dim ConsolidateRangeArray As Variant

ConsolidateRangeArray = Array("apples!R1C1:R37C6", "oranges!R1C1:R37C6")

Worksheets("Master").Range("A1").Consolidate _
Sources:=ConsolidateRangeArray, _
Function:=xlSum

或使用Split()从字符串中创建String数组,子字符串用分隔符分隔

Dim ConsolidateRange As String

ConsolidateRange = "apples!R1C1:R37C6,oranges!R1C1:R37C6"

Worksheets("Master").Range("A1").Consolidate _
Sources:=Split(ConsolidateRange, ","), _
Function:=xlSum