嗨,我有一个具有以下结构的电子表格:-
我需要帮助找出公式或VBA函数,以计算“活动阻止计数”列。
这是日期列中非空白连续单元格的计数。例如,项目5有4个星期的活动,但只有3个连续的活动区块。
任何想法都受到热烈欢迎;-)。我在周末工作,这让我发疯了!
谢谢
乔纳森
答案 0 :(得分:2)
只需遍历该范围内的所有单元格,并注意是否填充了这些单元格即可。
Function countActivityBlock(rng As Range) As Long
Dim r As Range, bNum As Boolean
If Not IsEmpty(rng.Cells(1)) Then
bNum = True
countActivityBlock = 1
End If
For Each r In rng
If Not IsEmpty(r) And Not bNum Then
bNum = Not bNum
countActivityBlock = countActivityBlock + 1
ElseIf IsEmpty(r) And bNum Then
bNum = Not bNum
End If
Next r
End Function
SpecialCells(xlCelltypeConstants,xlNumbers)在UDF中不起作用。
答案 1 :(得分:0)