VBA UDF索引匹配运行时错误424:必需的对象

时间:2019-09-20 10:38:28

标签: excel vba

我正在尝试创建一个UDF,该UDF从另一个工作簿中读取分数,该工作簿具有名为“ sh_scores”的工作表,并使用索引匹配返回基于日期(行)和扇区(列)的值。 UDF函数返回#VALUE,当我分别调试索引和匹配项时,出现上述错误#424。亲爱的,我将不胜感激。下面是我的代码:

Function getScores (iDate, Sector) As Double
Dim Scores As Double
Dim lastRow As Long, LastCol As Long
Dim appExcel As Application
Dim objWorkbook As Workbook 
Dim sh_Scores As Worksheet

Application.ScreenUpdating = False
Application.Calculation = xlManual
Application.DisplayAlerts = False
Application.EnableEvents = False


Set appExcel = New Application
appExcel.Visible = False

Set objWorkbook = appExcel.Workbooks.Open("I:\myFolder\Project10\Performance.xlsb")
Set sh_SourceScores = objWorkbook.Worksheets("sh_Scores")

lastRow = sh_SourceScores.Range("A2", sh_SourceScores.Range("A"& rows.Count).End(xlUp).Rows).Rows.Count
LastCol = sh_SourceScores.Cells(1, Columns.Count).End(xlToLeft).Column

   Scores = Application.Index(sh_SourceScores.Range("A1:O337"), Application.Match(iDate, sh_SourceScores.Range("A1:A337"), 0), Application.Match(Sector, sh_SourceScores.Range("A1:O1"), 0))

getScores = Scores

objWorkbook.Close
appExcel.Quit

Application.ScreenUpdating = True
Application.Calculation = xlAutomatic
Application.DisplayAlerts = True
Application.EnableEvents = True

End Function 

0 个答案:

没有答案