函数evaluate不识别公式中的中括号怎么办(没有evaluate函数)
934
2022-06-04
应用场景
批量将表达式转换为运算结果,把代表的汉字给替换掉
知识要点
1:Worksheet.Evaluate 方法 将一个 Microsoft Excel 名称转换为一个对象或者一个值。
2:利用replace函数将表达式以外的干扰字符长、宽、高替换成空文本,然后通过Evaluate函数将表达式转换成计算结果
Sub 将表达式转换为值()
On Error Resume Next '防错,避免选择已用区域以为的区域时出错
Dim Cell As Range
If TypeName(Selection) <> "Range" Then Exit Sub '选择对象为非空单元格则退出
If Selection.Columns.Count > 1 Then Exit Sub '选区大于1列则退出
For Each Cell In Intersect(Selection, ActiveSheet.UsedRange) '循环选区
'在单元格cell的右边一个单元格产生计算结果,将长宽高三字去除后再计算结果
Cell.Offset(0, 1) = Evaluate(Replace(Replace(Replace(Cell.Text, "长", ""), "宽", ""), "高", ""))
Next Cell
End Sub
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。