Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Excel VBA中将字符串用作公式_Excel_Vba_Worksheet Function - Fatal编程技术网

在Excel VBA中将字符串用作公式

在Excel VBA中将字符串用作公式,excel,vba,worksheet-function,Excel,Vba,Worksheet Function,我正在根据电子表格中的参数表中设置的值建立公式。我现在想在VBA中计算公式,但不知道如何将字符串转换为代码而不是字符串 因此,公式在代码中构建如下(根据选项不同而不同,这只是一个简单的加法,其中工作簿、工作表和单元格对于这两个术语都是可变的) 结果字符串为,在本例中为 "'[Control Model v1.35- nonfunctional.xlsm]Input'!E2, + '[Control Model v1.35- nonfunctional.xlsm]Input'!E3" 如何将其转

我正在根据电子表格中的参数表中设置的值建立公式。我现在想在VBA中计算公式,但不知道如何将字符串转换为代码而不是字符串

因此,公式在代码中构建如下(根据选项不同而不同,这只是一个简单的加法,其中工作簿、工作表和单元格对于这两个术语都是可变的)

结果字符串为,在本例中为

"'[Control Model v1.35- nonfunctional.xlsm]Input'!E2, + '[Control Model v1.35- nonfunctional.xlsm]Input'!E3"
如何将其转换为代码?我曾尝试将其作为application.sheet.sum函数来执行,但这会产生错误。除了求和,我还需要能够对数组进行乘法、除法、减法和求和。我原以为使用application.sheet.sum函数可以工作,但我只得到了错误

application.Evaluate(“Sheet1!A1+Sheet1!A2”)

请注意,您要计算的字符串表达式限制为255个字符


您似乎想直接在VBA代码中准备和计算
Excel样式的公式?是的,不确定这是最好的方法,还是将值加载到变量中并进行计算会更好。问题是我首先建立公式,然后它们将用于评估10000行,以建立一组结果。因此,最初我需要将公式作为字符串—如果我想作为代码而不是satring求值,我将在以后手动转换它,因为每一行都要求值,而不仅仅是调整单元格和行引用的内容。这些公式只是为了建立公式,并为第一个公式提供起点calculation@A.Webb非常感谢,非常好用@MarcL请用
Evaluate
"'[Control Model v1.35- nonfunctional.xlsm]Input'!E2, + '[Control Model v1.35- nonfunctional.xlsm]Input'!E3"