所以我寫了一個簡單的函數在VBA中,我想在我的Excel工作簿中使用它。我寫了下面的代碼:#VALUE錯誤從我的VBA功能
Option Explicit
Public Function KOLICINA(fiksnacena As Long, ceni() As Long, nedela() As Long) As Long
Dim brojac As Integer
For brojac = 1 To UBound(nedela)
If Not ((IsEmpty(nedela(brojac) Or nedela(brojac) = 0) And ceni(brojac) <> fiksnacena)) Then KOLICINA = nedela(brojac)
Next brojac
End Function
當我嘗試(使用=KOLICINA(18;G22:G26;H22:H26)
) 工作表單元格中使用它,我得到的#VALUE
錯誤。 我不明白爲什麼。函數應該經過nedela
數組,如果它找到非空或不同於0
的值,並且ceni
數組中的匹配單元格與fiksnacena
不同,它應該返回nedela
中單元格的值。
也許把'ceni()'和'nedela()'改成'Range'而不是'Long'? –
'然後KOLICINA = nedela(brojac)'也許可以替換爲'Then',接着是'KOLICINA = nedela(brojac)',然後是'Exit Function',然後是'End If'。一旦你找到了返回值,爲什麼繼續循環(除非你想要最後一場比賽)? –
顯然你的意思是如果不是(IsEmpty(nedela(brojac))或nedela(brojac)= 0)和ceni(brojac)<> fiksnacena Then'。 – GSerg