我试图分解一个太长的数组公式。使用REPLACE(感谢组!)找到答案,但无法使用已经测试的数组公式获得替换。如果我不使用数组公式作为替换字符串,则替换解决方案可以正常工作。如果使用表示数组公式的字符串,则代码不会出错,但不会替换。
基本上,我正在计算一个cost / lb,其中arrayTxt1 = cost& arrayTxt2 =磅& arrayTxt1 / arrayTxt2是cost / lb。两个数组公式都可以自行运行。我已经尝试过没有运气来缩短第二个数组字符串。
arrayTxt1 = "=SUM(IF((master_PayDate>=R14C)*(master_PayDate<EDATE(R14C,1))*
(master_Supplier=""" & selValue & """)," & sumMetric1 & "))/1"
'this works
arrayTxt2 = "/CountA(master_Supplier)"
'no error but does not replace
arrayTxt2 = "/SUM(IF((master_PayDate>=R14C),master_TotalCost))"
'actual string I want to use
'arrayTxt2 = "SUM(IF((master_PayDate>=R14C)*(master_PayDate<EDATE(R14C,1))*
'(master_Supplier=""" & selValue & """)," & sumMetric2 & "))"
Set selRng = .Cells(sumRow + 1, firstCol + 2)
With selRng
.FormulaArray = arrayTxt1
.Replace "/1", arrayTxt2, xlPart
End With