我创建了一个包含一些值的工作表;它是显示一年中每一天的一些信息的日历。我每天都会收到一封作为信件给出的信息。 例如2016年2月3日 - >“M”使用个人VBA功能的错误
我也有一个VBA函数,计算一个月的单元格的总和 - 等于 - “M”。
我的第一个尝试是在VBA修改小区接收的总和,与VBA函数的值;但我的问题是,用户可以手动编辑日历中的某些单元格,所以我希望求和单元格可以自动重新计算,而现在它不会。
这里是我的功能,位于名为“ABC”模块中:
Function nombreCellulesDansEtat2() As Integer
Application.Volatile
Dim moisSub
Dim équipeSub
Dim étatSub
moisSub = 1
équipeSub = 1
étatSub = "M"
Dim ligneDépart As Integer
ligneDépart = 5 + (moisSub - 1) * 9
Dim ligneEnCours As Integer
ligneEnCours = ligneDépart + équipeSub
Dim cellule
Dim retour As Integer
For Each cellule In sh.Range("B" & ligneEnCours & ":AF" & ligneEnCours)
retour = retour + IIf(cellule.Value = étatSub, 1, 0)
Next cellule
nombreCellulesDansEtat = retour
End Function
请不要专注于团队数(“équipeSub”法语),它不是链接的问题。
含有总和的电池具有以下公式:
=nombreCellulesDansEtat2()
和公式的自动计算的选项被启用(I使用Excel 365具有窗10)
的错误是总和单元包含:
#VALUE!
而不是所需的总和。
谢谢你支持我的英文不好!
您是否尝试过使用调试器逐句通过它,当它给出错误时? – litelite
另外,您应该考虑更改帖子的名称。因为那个错误意味着excel试图重新计算,但是出现错误。 – litelite
用sh代替ActiveSheet函数的计算结果为整数 –