我正在以编程方式创建脚本。但是我无法从modeule访问数据集。请参阅下面的“示例”。 ('ds'未声明。由于其保护级别,它可能无法访问。)
在Sub main()中,我可以毫无问题地访问ds 在Cacl_Module的Sub test()中,我无法访问ds。
Namespace Evaluator
Public Class Evaluator
Public ds As New DataSet
Public ComboBox1 As New ComboBox
Public CheckBox1 As New CheckBox
Public TextBox1 As New TextBox
Sub main()
Debug.Print(ds.Tables("Table1").Rows.Count)
Debug.Print(CheckBox1.Checked)
End Sub
End Class
Public Module Calc_module
Sub test()
Debug.Print(ds.Tables("Table1").Rows.Count)
Debug.Print(CheckBox1.Checked)
End Sub
End Module
End Namespace
答案 0 :(得分:0)
那是因为ds
是Evaluator
类的成员。在Main
类的Evaluator
方法中,您可以访问其成员。但是在test
的{{1}}方法中,您没有Calc_Module
的实例。你应该创建一个,如:
Evaluator
甚至更好(无需重复代码)
Public Module Calc_module
Sub test()
Dim MyEvaluator as new Evaluator()
Debug.Print(MyEvaluator.ds.Tables("Table1").Rows.Count)
Debug.Print(MyEvaluator.CheckBox1.Checked)
End Sub
End Module