怎样能将X、Y的值代入一个文本型的计算公式?

dsqg1120 2003-11-25 11:03:20
如果TEXT1.TEXT="X+Y",是一个文本型的计算公式,而X=2,Y=3.怎样能实现将X、Y的值
代入这个TEXT1.TEXT中的文本型的计算公式呢?谢谢!!!

...全文
142 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lile 2003-11-25
  • 打赏
  • 举报
回复
有点错误,应是:
tempStr=replace(Text1.Text,"x",CStr(2),,,vbTextCompare)
少了个逗号
这只是字符串的替换工作,要运行出来还是要向上面的大哥们那样做
lile 2003-11-25
  • 打赏
  • 举报
回复
小弟有个简单的方法啊,用replace函数把字符串里的x、y进行替换就行了,例如替换x:

dim tempStr as string'接收replace函数的返回结果
tempStr=replace(Text1.Text,"x",CStr(2),,vbTextCompare)

替换的结果为一新的字符串保存于tempStr中。第一个参数为要被替换的源字符串,第二参数为要查找的字符串(即将要被替换的字符),第三参数为用于替换的字符串(在源字符串中替换前一参数中的字符),第四参数为替换的开始位置,默认为1,第五参数为替换的次数,默认为-1(进行所有可能的替换),最后参数为比较方法,使用文本模式比较。
详细使用参考VBA.Strings.replace函数
lihonggen0 2003-11-25
  • 打赏
  • 举报
回复
这个贴子我在微软新闻组给你回答过!
lihonggen0 2003-11-25
  • 打赏
  • 举报
回复
工程---部件----添加Microsoft Script Control 1.0



Private Sub Command1_Click()
Dim x, y As Integer
x = 2
y = 3
Text1.Text = ScriptControl1.Eval(x + y)

End Sub
goodname008 2003-11-25
  • 打赏
  • 举报
回复
本质就是已知某字符串是一个合法的VB语句,然后把字符串作为参数调用API执行它。
goodname008 2003-11-25
  • 打赏
  • 举报
回复
' 在窗体中放一个CommandButton和一个TextBox,在TextBox中输入x+y,单击Command即可。
' 没做错误处理


Option Explicit
Private Declare Function EbExecuteLine Lib "vba6.dll" (ByVal pStringToExec As Long, ByVal Unknownn1 As Long, ByVal Unknownn2 As Long, ByVal fCheckOnly As Long) As Long

Public Function ExecuteLine(sCode As String, Optional fCheckOnly As Boolean) As Boolean
ExecuteLine = EbExecuteLine(StrPtr(sCode), 0&, 0&, Abs(fCheckOnly)) = 0
End Function

Private Sub Command1_Click()
ExecuteLine "Dim X As Long, Y As Long"
ExecuteLine "x = 2"
ExecuteLine "y = 3"
ExecuteLine "msgbox " & Text1.Text
End Sub

rainstormmaster 2003-11-25
  • 打赏
  • 举报
回复
感觉都不是很好,text1.text的内容应该是变化的,用goodname008(卢培培,LPP Software) 的方法得不到返回值,而 lihonggen0(李洪根,MS MVP,标准答案来了) 的方法显然无法满足要求

其实这个问题也不是很复杂,现在没有时间了,我提示一下:需要使用类模块

7,789

社区成员

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

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