快速总结 - 我正在使用一些遗留代码,我需要添加一个带有字符串数组的类,并因无法声明公共字符串数组而绊倒。
更多的:
我有一个带有 200 行不同个人数据的 Excel 表的 VB 代码。每个人的数据将由代码重新混合,并分流到 Word 模板中,以生成有关个人的报告。我需要添加另一段代码,如下所示:
我创建了一个类类型 MotivationBuckP,我想创建该类的四个对象,其中包含可变长度的字符串数组。(如果这更容易,我可能有办法用固定长度对其进行编码)
数组开始为空,将根据特定个人的数据填充。我使用数组是因为虽然字符串内容的数量是固定的(18 个标题和 18 个较长的文本位),但每个人都会让它们在四个对象中分布不同(将每个人想象成一个 18 加仑的桶倒入四个桶)
我知道在类模块中我需要将所有变量声明为公共,例如:
Public MotivID As Integer
Public MotivQuant As Integer
Public strMotivatorTitle() As String
Public strMotivatorDescriptor() As String
但是为了响应最后两个变量的存在,运行给了我错误:
Compile error:
Constants, fixed-level strings, arrays, user-defined types and Declare statements are not allowed as Public members of object modules
由于现有代码的限制,我需要在多个模块中创建和使用 strMotivatorTitle 和 strMotivatorDescriptor 变量。但我知道我不能这样做,除非它被公开声明(并且,我想,在类模块中)。所以这就是我碰壁的地方。
非常感谢任何帮助。自从攻读博士学位以来,我就没有大量使用过 VB,所以我可能被一些明显的东西绊倒了……