执行字符串中内容的问题

zqhomedn 2003-09-10 08:43:28

dim kk as string
dim hh as integer
kk="3+2*1"
如果将kk算出值给hh
也就是程序执行了kk中内容,最好不要用分解字符串取算式的方式,
而是直接执行所得.
...全文
28 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
TechnoFantasy 2003-09-10
  • 打赏
  • 举报
回复
完整方法:
首先在工程中添加一个Class Module,然后在里面加入一句代码:
Public k1 As Integer
然后在工程中加入Microsoft Script Control控件,在窗体中加入一个Microsoft Script Control控件和一个Button:
Private Sub Command1_Click()
Dim a(1)
Dim shar As New Class1

ScriptControl1.AddObject "sh", shar
ScriptControl1.AddCode "Function Main(x)" & vbCrLf & "kk=3+2*1" & vbCrLf & "sh.k1 = kk " & vbCrLf & "End Function"

ScriptControl1.Run "main", a
Debug.Print shar.k1
End Sub

点击Button1得到结果
zqhomedn 2003-09-10
  • 打赏
  • 举报
回复
谢谢大家
jlum99 2003-09-10
  • 打赏
  • 举报
回复
同上:)
TechnoFantasy 2003-09-10
  • 打赏
  • 举报
回复
使用ScriptControl:
http://rookscape.com/vbgaming/tutBQ.php
射天狼 2003-09-10
  • 打赏
  • 举报
回复
菜单"工程/引用/Microsoft Script Control 1.0"

Private Sub Command1_Click()
Dim s As String, Scpt As New ScriptControl

Scpt.Language = "VBScript"
MsgBox Scpt.Eval("3+2*1")
End Sub
rfq 2003-09-10
  • 打赏
  • 举报
回复
1、堆栈
数据结构书
2、方在sql server 中
declare @sql varchar(100)
select @sql='select 3+2*1'
exec(@sql)

7,789

社区成员

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

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