关于evaluate函数求值的问题

在Excel中,想计算带有文字备注的公式,例如A1单元格内容18【长】+10【宽】求值,因为公式中带有文字,所以单用evaluate函数不能完成计算 ,想用嵌套函数对备注进行整理后计算,思路如下,公式中的 【文字说明】都是一串字符,如果用istext函数进行判断,则会输出一个true的值,将 【文字说明]】替换成 *istext(“ 【文字说明】”) ,18【长】=8 * istext("【长】")=18 * true=18,从而完成计算,得到一个值
需要做的操作,利用substitute函数,将左边的中括号 【,替换成为 *ISTEXT("【 ,右边的中括号 】 ,替换成为 】”)

一、公式为=evaluate(SUBSTITUTE(SUBSTITUTE(A1,"【","*ISTEXT("【"),"】","】")"))
运行结果显示公式错误
二、实际可运行的公式为 =evaluate(SUBSTITUTE(SUBSTITUTE(A1,"【","*ISTEXT(""【"),"】","】"")")) ,
结果为18 * ISTEXT("【长】")+10 * ISTEXT("【宽】"),此为目标结果。

疑问:在(一)中如果将【替换为 * ISTEXT("【时,在其他单元格,例如A2输入 * ISTEXT("【、A3输入 】”)后。公式修改为=evaluate(SUBSTITUTE(SUBSTITUTE(A1,"【",A2),"】",A3)),则结果无误,那将上述公式A2、A3内容替换为 * ISTEXT("【、 】”)后,公式=evaluate(SUBSTITUTE(SUBSTITUTE(A1,"【","* ISTEXT("【"),"】", "】”)")),运行出错,为何不用A2、A3写公式时,想要(二)结果时,SUBSTITUTE函数中为何需要多写一个引号?
在(二)中,"【"替换为"*ISTEXT(""【",结果应为18 * ISTEXT(""【长】"")+10 * ISTEXT(""【宽】"")才是,为何运行结果为18 * ISTEXT("【长】")+10 * ISTEXT("【宽】"),求解。

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。