我的excel vba工作簿中有以下代码:
Option Explicit
Option Base 1
Private Columns() As Column
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If (Not isInitialised(Columns())) Then
Call Setup
Debug.Print "Setup called"
End If
'...do the rest
End Sub
Function isInitialised(a() As Variant) As Boolean
isInitialised = False
On Error Resume Next
isInitialised = IsNumeric(UBound(a))
End Function
当Workbook_SheetChange子触发器触发时,出现以下错误:
Compile error:
Type mismatch: array or user-defined type expected
将Columns
数组传递给isInitialised
函数的正确方法是什么?