首页 > 解决方案 > 在一个工作簿中求和范围并将其发布到另一个工作簿

问题描述

我需要对 Workbook_A 中的范围“C:C”求和,并将结果粘贴到 Workbook_B 中的单元格“B2”中。到目前为止,我只能找到一个非常长且复杂的解决方案,或者一些首先将范围复制到 Workbook_B 然后在那里进行总结的解决方案。是否有 VBA 单线器来执行此操作(Makro 坐在 Workbook_B - 目标中)?

将单个单元格从 Workbook_A 复制到 Workbook_B 工作得很好:

Workbooks("Workbook_A.xlsx").Worksheets("Sheet1").Range("C2").Copy  Workbooks("Workbook_B.xlsm").Worksheets("Sheet1").Range("B2")

对我不起作用的是:

Workbooks("Workbook_A.xlsx").Worksheets("Sheet1").WorksheetFunction.Sum(Range("C:C")).Copy Workbooks("Workbook_B.xlsm").Worksheets("Sheet1").Range("B2")

也不起作用

Workbooks("Workbook_B.xlsm").Worksheets("Sheet1").Range("B2").Value = Workbooks("Workbook_A.xlsx").Worksheets("Sheet1").WorksheetFunction.Sum(Range("C:C"))

标签: excelvba

解决方案


最后一个快到了。尝试

Workbooks("Workbook_B.xlsm").Worksheets("Sheet1").Range("B2").Value = _
        WorksheetFunction.Sum(Workbooks("Workbook_A.xlsx").Worksheets("Sheet1").Range("C:C"))

您需要完全定义要求和的范围 - 即将所有内容放在 sum 函数中。


推荐阅读