窗体模块中使用set后会创建新对象?该怎么处理

窗体模块中使用set后会创建新对象?
我在窗体A中创建了窗体模块带参数,由窗体B中调用后会创建新实例,试过N种方法没办法解决,上来发帖求助大家给点帮助
贴上代码,看看有没有可以不创建新对象实现功能的办法

窗体A代码
'查询Grid数据
Function FindData(strWhere As String)

  Set rs = conn.Execute("proProductPriceXs @State='SQLlist',@strWhere='" & strWhere & "'")
  Set fg.DataSource = rs
End Function

在B窗体中调用后 用了红色这句就会重新创建多一个窗体实例出来,烦死人了,应该怎么整谢谢各位

------解决方案--------------------
Set fg.DataSource = conn.Execute("proProductPriceXs @State='SQLlist',@strWhere='" & strWhere & "'")
就可以了。
------解决方案--------------------
你需要将 FormA 的实例传递给 FormB 进行调用,而不是在 FormB 中调用 FormA.FindData(...)
------解决方案--------------------
那直接在B窗体中写好了,为什么还要在窗体A中写?fg是窗体A的控件吧,如果赋值,那必然会将窗体A实例化