在excel里 用evaluate函数计算某个单元格内文本算式的VBA语句应该怎么写?

如题。不用VBA,直接在工作表用CTRL+F3插入名称管理器的方法,百度知道里可以找到很多。但是我想在VBA里用代码的形式体现,举例来说,A1的内容为2+2,我想在B1得... 如题。
不用VBA,直接在工作表用CTRL+F3插入名称管理器的方法,百度知道里可以找到很多。
但是我想在VBA里用代码的形式体现,举例来说,A1的内容为2+2,我想在B1得出结果。
展开
 我来答
luxic2005
2019-06-12 · TA获得超过189个赞
知道小有建树答主
回答量:359
采纳率:72%
帮助的人:82.5万
展开全部
可以使用vba自定义函数方式,或直接调用方式
Function fmula(rng As Range)
Dim str As String
str = rng.Value
fmula = Evaluate(str)
End Function

--------------------------------------
sub test()
dim str as string
str=[a1].value
[b1]=evaluate(str)
end sub
追问
感谢指点,
我写的跟你有点不一样,反正最后结果能实现就OK。
ThisWorkbook.Sheets(1).Cells(2, 3) = Evaluate(ThisWorkbook.Sheets(1).Cells(1, 3).Value)
我之前报错就是少了语句最后的"VALUE",请问有没有VALUE会导致什么区别呢?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式