首页 > 解决方案 > 如何获得一个excel公式将一个范围解析为单个单元格

问题描述

假设我在单元格 A1 中键​​入以下公式:

=B:B + C:C

那么如果 B 和 C 是包含数字的列,那么将出现在 A1 中的值是 B1 + C1。现在,假设我在 VBA 编辑器中键入以下内容:

Public Function MySum(x, y)
    MySum = x + y
End Function

然后以下将返回一个#VALUE!错误:

=MySum(B:B,C:C)

但是,例如,以下将起作用:

=MySum(B:B+0,C:C+0)

Excel 将尝试评估 B:B+0,意识到 B:B 应该引用单元格 B1 而不是整个范围,并执行正确的计算。

有什么方法可以更改 MySum 的代码,以便 MySum(B:B,C:C) 给出与 B:B + C:C 相同的结果?

标签: excelvba

解决方案


推荐阅读