Sub,Function或Property错误

我正在尝试从Excel文档中加载,sorting和显示名称。 我不断收到一个预期的子,function或财产错误?

Sub load() 'this program purpose is to load , sort and display names from an excel document' Dim names(1 To 5) As String Dim passNum As Integer, i As Integer, temp As String Dim num_names As Long, shift As String num_names = 4 ' LOADS NAMES FROM EXCEL FILE' For i = 1 To num_names names(i) = Cells(i, 1) Next i Call shift Call display End Sub Sub sort_1(passNum As Integer, num_names As Long, i As Integer, temp As String)' SORTS NAMES' For passNum = 1 To (num_names - 1) For i = 1 To (num_names - passNum) If names(i) > names(i + 1) Then temp = names(i) names(i) = names(i + 1) names(i + 1) = temp End If Next i Next passNum End Sub Sub display(i As Integer, num_names As Long)'DISPLAYS NAME BACK ON EXCEL FILE In COLUMN 2' For i = 1 To num_names Cells(i, 2) = names(i) Next i End Sub 

你正在得到这个错误,因为它找不到Shift程序

 Call shift 

你也需要传递参数给子display否则你会得到一个“参数不可选”的错误。

例如

 Call display(1, 1) 'OR Simply display 1,1 

你需要列出所有的名字?

尝试这个…

 Sub ListNames() Dim N As Name For Each N In ThisWorkbook.Names Debug.Print N.RefersTo Next N End Sub