if语句的问题

zhaozidong86 2011-08-25 10:53:06
Private Sub Command1_Click()
Dim a As Integer
Dim m As Integer
Dim n As Integer
Dim s As String
a = 5

Select Case Combo1.Text


Case ">"

s = "m -n > 5"
Case ">="
s = "m - n >= 5"

Case "="
s = "m - n = 5"

Case "<"

s = " m - n < 5"
Case "<="
s = " m - n <= 5"

End Select

If " & s & " Then '这里提示类型不匹配

MsgBox s

End If



End Sub

Private Sub Form_Load()
Combo1.Clear

Combo1.AddItem ">"
Combo1.AddItem ">="
Combo1.AddItem "="
Combo1.AddItem "<="
Combo1.AddItem "<"
End Sub

请问我要实现这样的意思,IF里面应该怎么写
...全文
84 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhaozidong86 2011-08-25
  • 打赏
  • 举报
回复
好的,我在看
现在还是人类 2011-08-25
  • 打赏
  • 举报
回复
仔细看看我说的东西
zhaozidong86 2011-08-25
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 veron_04 的回复:]

楼主何必化简为繁?
[/Quote]
化简为烦?

这其实是我自己做的一个小例子,我的程序真正要实现的功能比这复杂多了,没法全部贴上来。

我想要的是根据Combo1里面选择的结果来执行IF语句

比如选择了">"

那就执行 m-n>5
zhaozidong86 2011-08-25
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 asftrhgjhkjlkttttttt 的回复:]

没看懂,s本身定义为字符不需要在"",
If s Then MsgBox s
[/Quote]
执行一下就知道行不行了
贝隆 2011-08-25
  • 打赏
  • 举报
回复
楼主何必化简为繁?
现在还是人类 2011-08-25
  • 打赏
  • 举报
回复

Dim strScript As String
Dim m As Long
Dim n As Long
Dim s As Long
m = 1
n = 5
strScript = "dim m,n,s" & vbCrLf
strScript = strScript & "m = " & m & vbCrLf
strScript = strScript & "n = " & n & vbCrLf
strScript = strScript & "s = m - n" & vbCrLf

ScriptControl1.Reset
ScriptControl1.ExecuteStatement strScript
s = ScriptControl1.CodeObject.s
MsgBox s
孤独剑_LPZ 2011-08-25
  • 打赏
  • 举报
回复
没看懂,s本身定义为字符不需要在"",
If s Then MsgBox s
现在还是人类 2011-08-25
  • 打赏
  • 举报
回复
VB里有一个Microsoft Script control 1.0 控件可以做这种事
现在还是人类 2011-08-25
  • 打赏
  • 举报
回复
你是想自定义表达式然后解释表达式吧

7,763

社区成员

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

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