【发布时间】:2022-01-05 11:13:59
【问题描述】:
我是新手,需要 VBA 方面的专家帮助。实际上,我正在寻找基于按钮单击事件的两列(序列号和警报代码)的连续计数的 Vba 代码。列行不固定(动态变化)。连续计数是每个序列号的警报代码的最大重复计数。这应该根据每个序列号的最大重复警报计数显示在输出工作表中
输入工作表:
预期输出:
输入表中的重复计数如下模式(仅供参考)。
我的源代码如下,但这不引用第一列序列号(这只适用于像 AlertCode 这样的一列):
Sub ConsecutiveCount()
Dim lr As Long, c As Range, a As Long
Application.ScreenUpdating = False
lr = Worksheets("Count2").Cells(Rows.Count, 1).End(xlUp).Row
For Each c In Range("B2:B" & lr)
If c.Value <> c.Offset(1).Value Then
a = Cells(c.Row, 3).End(xlUp).Row
' Range(Cells(c.Row, 4), Cells(c.Row, 4).End(xlUp).Offset(1)).Value = c.Row - a
Cells(c.Row, 3).Value = c.Row - a
Else
End If
Next c
Application.ScreenUpdating = True
End Sub
电流输出(不包括序列号)
【问题讨论】:
标签: excel vba excel-formula