簡體   English   中英

如何在Excel中連續計數單元格,但僅對相鄰單元格計數一次

[英]How can I count cells in a row but only count adjacent cells once in Excel

嗨,我有一個具有以下結構的電子表格:-

電子表格示例

我需要幫助來找出公式或VBA函數,以計算“活動阻止計數”列。

這是日期列中非空白連續單元格的計數。 例如,項目5有4周的活動,但只有3個連續的活動塊。

任何想法熱烈歡迎;-)。 我在周末工作,這讓我發瘋了!

謝謝

喬納森

只需遍歷范圍內的單元格,注意單元格是否已填充的變化。

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中不起作用。

這樣做的公式方式是使用FREQUENCY,如下所示

=SUM(--(FREQUENCY(IF(D2:P2<>"",COLUMN(D2:P2)),IF(D2:P2="",COLUMN(D2:P2)))>0))

必須使用Ctrl Shift 輸入作為數組公式

這個這個

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM