我想知道是否有办法:
我有1000个细胞。我想看看x被放置在7个细胞周期中的次数,
即。将x放置在单元格1和3中,这将算作1。
将x放置在单元格1、8和9中,这将算作2。
X放在细胞1,2,3,4,5,6,7,8,9,10,11,170中。这个算作3。
到目前为止,
=SUM(IF(COUNTA(M77:N77)=0,0,1),IF(COUNTA(O77:P77)=0,0,1),IF(COUNTA(Q77:R77)=0,0,1)) 不确定VBA是否会更容易,然而,它需要不断更新,并将比较10至12个银行的1000个不同的7-细胞模式。
发布于 2016-01-14 23:31:46
试试这个用户定义的函数:它看起来很有效,但还没有完全测试。如果你把公式放在x-天跨度的中间,这个函数就会产生一个循环公式问题,如果你的范围超过1行,它很可能会崩溃和烧毁。
我无法找到任何内置Excel函数的组合来完成这种范围序列的渐进式计数,但它可能可以使用SUMPRODUCT和其他深奥的公式来完成。然而,在之前花了几个小时试图想出一个可爱的公式来完成复杂的任务之后,没有人(包括我)会理解,你最好的选择就是编写一些代码,你可以根据自己的需要进行调试和修改。
但是,最终,您将不得不问自己使用电子表格来执行类似数据库的功能是否值得。我想,考虑到您给出的业务描述,您可能需要尽快问自己这个问题:)
Public Function CountRangeSpanEntries(span As Integer, rng As Range) As Integer
Dim length As Integer
length = rng.Columns.count
Dim count As Integer
count = 0
Dim rw As Integer
rw = rng.Row
Dim used As Boolean
Dim index As Integer
Dim i As Integer
For index = 1 To length Step span
For i = index To index + span - 1
If Cells(rw, i).Value = "x" Then
used = True
End If
Next i
If used Then
count = count + 1
End If
used = False
Next index
CountRangeSpanEntries = count
End Functionhttps://stackoverflow.com/questions/34797024
复制相似问题