excel - 如何通过VBA将所有参考单元格中的公式合并为一个公式?
问题描述
google了一会儿似乎没有人有这样的问题。基本上,我有几个单元格有公式并相互引用。下面是一个例子。我怎样才能把它们变成一个公式?
A B C
1 1 =(A1+C1) =B2
2 3
所以,我想将它们解析为=1+3
. 我怎样才能做到这一点
解决方案
答案并不容易。我以前做过类似的。
回想起来,我将公式读入VBA,即
F1 = cells(1,2).Formula
然后由运算符解析。IE
F1b = split(F1, "*", -1)
您需要为所有操作员执行此操作,并存储操作员及其位置!因此,我建议使用一个可以同时与多个运算符一起使用的自定义函数,而不是对每个潜在的运算符使用拆分(即使自定义函数使用拆分)。
在得到不同的单元格地址后,你递归它们做同样的事情,直到你建立两个数组数组,第一个包含单元格地址树,第二个包含运算符树。
然后你需要把树弄平。
这个答案在代码方面不是很有帮助 - 我开始做了一些并记住了它的一罐蠕虫。例如,您期望公式中有任何 IF() 或 AND() 吗?
推荐阅读
- python - How to fix "ModuleNotFoundError: No module named '__builtin__' " in pycharm
- android - Flutter assets image not find
- sql - Oracle/SQL Power Bi DirectQuery 指令错误“当前不支持此本机数据库查询。”
- flutter - Flutter 刷新状态小部件
- tensorflow - 什么时候应该使用 tf.function 装饰器
- javascript - javascript-如何通过在 Chrome 中调试在一个 if 语句中查看每个条件的结果?
- python - 在 Matplotlib 中显示 X 轴上的所有完整小时
- javascript - 在 Highcharts 中更新 legendItem mouseover/mouseout 上的 zIndex 列
- lisp - Elisp中各种形式的循环和迭代
- javascript - 类型'A'.ts(2339)上不存在属性'ref' - React,TypeScript