我创建了用户定义的函数来计算足球比赛结果。
My Root Function看起来:
Function calculatePoints(personTypes As Range, matchesResults As Range) As Integer
calculatePoints = getAllPersonPoints(personTypes, matchesResults)
End Function
getAllPersonPoints函数:
Private Function getAllPersonPoints(personTypes As Range, matchesResults
AsRange) As Integer
Dim x As Long
Dim y As Long
Dim isTheSurest As Boolean
getAllPersonPoints = 0
For x = 1 To personTypes.Rows.Count
For y = 1 To personTypes.Columns.Count
isTheSurest = isTheSurestResult(personTypes.Cells(x,
y).DisplayFormat.Interior.PatternColorIndex)
getAllPersonPoints = getAllPersonPoints +
getPoints(matchesResults.Cells(x, y).Value, personTypes.Cells(x, y).Value,
isTheSurest)
Next y
Next x
End Function
当我试图通过手动设置参数来调用此函数时:personTypes range和matchesResults ragne - everythink工作正常。
但是当我试图从表格中调用它时,我在所选单元格中出现#VALUE错误。
但是在功能形式上有正确的结果:
A一直试图调试返回值,并且总是得到正确的值。我只有返回单元格中的错误才有问题。
有什么想法吗?
答案 0 :(得分:2)
答案 1 :(得分:0)
我通过代码解决了问题:
personTypes.Cells(x, y).Interior.ColorIndex
代替:
personTypes.Cells(x,y).DisplayFormat.Interior.PatternColorIndex
此解决方案有效。