所以这里有一个代码片段。我得到的错误是"赋值左侧的函数调用必须返回Variant或Object"。我将函数return更改为变量数据类型,但这没有帮助。
我正在尝试使用函数调用生成一个随机字符串。因为它是大量的子表,为了便于维护,我希望像这样将表分开,而不是在一个长系列的代码中。
如果这不可行,有人能提出另一种方法吗?
Private Function GenAstStrategicResouce() As Variant
Dim X As Integer
X = Int((200 * Rnd) + 1)
If X < 10 Then
GenStrategicResouce = "Bose-Einstein Condensates"
ElseIf X < 20 Then
GenStrategicResouce = "Diamonds"
End If
End Function
声明函数以返回字符串。
您还在返回中错误地将函数名称键入为GenStrategiResouce,而不是GenAstStrategiResauce。
Private Function GenAstStrategicResouce() As STRING
Dim X As long
X = Int((200 * Rnd) + 1)
If X < 10 Then
GenAstStrategicResouce = "Bose-Einstein Condensates"
ElseIf X < 20 Then
GenAstStrategicResouce = "Diamonds"
End If
End Function
它不能返回任何其他内容,因此变体(通常用于可能返回CVErr或数组(是不必要的。