Private Sub Form_Load()
Dim ss As String
ss = "mnuOpen_Click"'怎样调用mnuOpen_Click事件,不用直接调用:call mnuOpen_click,针对SS字符串进行转换操作调用  mnuOpen_Click()事件
End SubPrivate Sub mnuOpen_Click()
'这是执行打开的内容,略
End Sub

解决方案 »

  1.   

    Select Case ss
       Case "mnuOpen_Click"
           Call mnuOpen_Click
       Case "mnuClose_Click"
           Call mnuClose_Click
    End Select
      

  2.   

    或者 scriptcontrols控件,scriptcontrols1.run ss
      

  3.   

    scriptcontrols控件需要这样做才可以
    str="sub mnuOpen_Click()" & vbcrlf
    str=str & "msgbox(""hhh"")"  & vbcrlf
    str=str &"end sub"
    scriptcontrols1.language="vbscript"
    scriptcontrols1.addcode str
    scriptcontrols1.run ss
      

  4.   

    Select Case ss
       Case "mnuOpen_Click"
           Call mnuOpen_Click
       Case "mnuClose_Click"
           Call mnuClose_Click
    End Select
    这个方法不行,因为我现在根本就不知道case 后面的内容是什么?是通过变量来得到的.
      

  5.   

    上面scriptcontrols1.run ss
    改下
    scriptcontrols1.run "mnuOpen_Click"
      

  6.   

    请问scriptcontrols1这个控件怎样引用啊,是那一个啊
      

  7.   

    Private Sub Command1_Click()
    Dim ss As String
    ss = "mnuOpen_Click"
        
        CallByName Form1, "mnuOpen_Click", VbMethod
    End SubPublic Sub mnuOpen_Click()
        MsgBox "abc"
    End Sub
    记得要调用的函数必须是 public 的
      

  8.   

    找到了,但是这样不行的,你的意思是将mnuOpen_click事件所有代码放到一个字串里啊,再将字串当代码加到scripcontrol1控件中,现在我也不知道事件里代码是什么?我只知道事件,怎么弄啊.急,谢谢了,
      

  9.   

    上面 ss 忘了换进 callbyname 中,换进去效果一样。CallByName Form1, ss, VbMethod
      

  10.   

    Private Sub Command1_Click()
    Dim ss As String
    ss = "mnuOpen_Click"
        
        CallByName Form1, "mnuOpen_Click", VbMethod
    End SubPublic Sub mnuOpen_Click()
        MsgBox "abc"
    End Sub
    记得要调用的函数必须是 public 的
    非常感谢您,你的方法是可行的,
    CallByName Form1, "mnuOpen_Click", VbMethod
    请教一下,我能否将"mnuOpen_Click"用变量的形式行不通,有办法解决吗?
      

  11.   

    好了,行了,OK,非常感谢!阿勇及楼上所有帮助我的朋友,我一会儿给分给你,我的MSN是:[email protected]请加我啊,高手