excel用什么公式可以把表格内的文本替换为数值,并可以运算?

2024-12-04 01:26:40
推荐回答(4个)
回答1:

使用宏表4.0函数EVALUATE,配合SUBSTITUTE函数,将备注文字用方括号包含,如:

选择B1单元格,按CTRL+F3,定义名称x

=EVALUATE(SUBSTITUTE(SUBSTITUTE(!A1,"[","*ISTEXT(""["),"]","]"")"))

然后在任意单元格输入带有[备注]的计算式如:2[长度]*3[宽度],右侧一个单元格输入=X,即可得到结果6。

升级版:采用VBA自定义函数,加强各种判断,具体请参考:

http://hi.baidu.com/gouweicao78/blog/item/40a1f1504c3c759f8d543034.html

回答2:

你的要求没有人能达得到。如果没有后面的一句话还可以做到。
也就是说,参与计算的文本必须是公式形式的。如“6*3+2-100/2”还是可以计算的 。如果是“123*6x-今天天气好”这样的文本是无法计算的。
下面来详细说明一下。
1、单击你要计算的单元格,如D1(这一步不能少)。
2、点“公式”--“定义名称”--在“名称”中输入y”--删除“引用位置”内的全部内容--输入“=EVALUATE(A1) ”--单击“确定”。
3、在A1中输入" 9*6*2 "。
4、在D1中输入“=y ” 。你就可以看到结果为108。

再在A2,A3中输入其它公式形式的文本。9+6,32*6+47。有D列中运用序列填充,就可以看到D2,D3都自动计算出结果了。

在Office 2010中测试通过。

回答3:

[长]6*[宽]8*[高]9 如果A1都是这种格式的话,
CTRL F3 新建名称 输入 jisuan
引用位置输入 =EVALUATE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"[长]",""),"[宽]",""),"[高]",""))
确定,
然后B1输入公式 =jisuan
即可

回答4:

=PRODUCT(--TEXT(0&MID(A1,ROW(1:255),1),"0;;1;\1"))
按Ctrl+Shift+回车键结束公式即可。