form代码:
Private Sub Command1_Click()
Text3.Text = sum(Int(Text2.Text), Int(Text1.Text))
Command1.Caption = Text3.Text
End Sub
模块:
Public Function sum(x As Integer, y As Integer) As String
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
conn.Open "driver={sql server};server=xxj\XXXXXJ;database=mbk;uid=sa;pwd=1"
SQL = "select * from number"
rs.Open SQL, conn
Set MSHFlexGrid1.DataSource = rs
sum = MSHFlexGrid1.TextMatrix(x, y)
rs.Close
conn.Close
End Function
提示错误在Set MSHFlexGrid1.DataSource = rs我把模块中的代码放到from中就可以运行了  到底是哪里错了
Private Sub Command1_Click()
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
conn.Open "driver={sql server};server=xxj\XXXXXJ;database=mbk;uid=sa;pwd=1"   '连接数据库
SQL = "select * from number"
rs.Open SQL, conn
Set MSHFlexGrid1.DataSource = rs
Text3.Text = MSHFlexGrid1.TextMatrix(Int(Text2.Text), Int(Text1.Text))
rs.Close
conn.Close
End Sub

解决方案 »

  1.   

    解决了  在前面加上Form1.
      

  2.   

    MSHFlexGrid1是一个“控件”的名称,这些“可视对象”必须依附于某个窗体的,
    要操作这类对象,肯定得指明对应的窗体名称。
    使用语句的格式,基本上都是这样的格式:
    窗体名.控件名.属性
    窗体名.控件名.方法
    (“方法”指的是过程或函数,如果需要参数的,调用时还要传递对应的参数才行)
      

  3.   

    你在模块里面使用Form1的控件MSHFlexGrid1,前面又不加Form1., 肯定是报错的
      

  4.   

    MSHFlexGrid1这个又不再你模块里
    你不加FORM1有什么用?
    他知道你引用的那个?