Sub STube()
  Dim Sc As New ScriptControl
  Sc.Language = "VBScript"
  hh = 13
  hss = Sc.Eval(2 + hh)  
End Sub
程序通过:hss= 15
请教问题是
由于编程需要"h=13"变成内存变量h = 13 可以实现吗?

解决方案 »

  1.   

    字符串"h=13"置换出内存变量h=13,在FoxBase、FoxPro中用&可以实现。但在VB中太麻烦了...
      

  2.   

    Option Explicit
    Public H As Integer
    Private Sub Command1_Click()
            Dim S As String
            Dim S1 As String, S2 As String
            S = "H=13"
            S1 = Left(S, InStr(S, "=") - 1) '将等号“=”前面的字符提出来作为变量
             S2 = Right(S, Len(S) - InStr(S, "=")) '将等号“=”右边的字符提出来作为数值赋给左边的变量
             CallByName Me, S1, VbLet, Val(S2)  '设置H值为13
            Debug.Print H '看一下H的值是否为13?
    End Sub
      

  3.   

    谢谢,在excel中运行.关键是me不通过.me excel中没有
    me 换成 类1也不通过.请问在这里me如何理解??
      

  4.   

    Me是父窗体名称,即:Form1