如何用Like判断公式的正确性

ningyong58 2012-07-26 11:22:58

公式 计算结果 正确性
2*3 → 6 → TRUE
6-2-7*9+8 → -51 → TRUE
30+5/6-9 → 21.83333333 → TRUE
(5+6)*9 → 99 → FALSE
5+6) → #VALUE! → FALSE
sin(30*pi()/180) → 0.5 → FALSE

cos(30*pi()/181) → 0.867468184 → FALSE

tan(30*pi()/182) → 0.569703809 → FALSE

150+500-sqrt(500^2-(240*cos(5.49779))^2) → 179.6811342 → FALSE

************************************
目标需求,如何处理 "*[!0-9+-\*/]*" ,无#VALUE的条件下,将False改为True
***************************************

++++++++++++++
Function IsGoodFormula(ByVal sString As String) As Boolean
If Not sString Like "*[!0-9+-\*/]*" Then IsGoodFormula = True
End Function
++++++++++++++
Function oEval(Str As String)
oEval = Application.Evaluate(Str)
End Function







...全文
79 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
橘子皮... 2012-07-26
  • 打赏
  • 举报
回复
Like 功能有限,比如要判断1个或几个数字字符他就没办法了,他只能用#表达一个数字,几个就没办法表达了
ningyong58 2012-07-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
Like 功能有限,比如要判断1个或几个数字字符他就没办法了,他只能用#表达一个数字,几个就没办法表达了
[/Quote]

谢谢回复。
请问,用正则表达式方法能够实现此帖的目标需求吗?
谢谢。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧