我正在开展一个项目,我有一个中等大小的列表(有10到30个项目),我正在迭代。有一个很大的标准列表用于对此列表进行排序。简单来说,我有5个类别,每个类别根据项目状态打勾两个计数器。这对我来说很简单,只需Switch
/ Case
或更基本的If
/ ElseIf
。是什么让这个问题变得更加困难,而且我认为值得外界投入的是,每个项目都附有日期,每个月只计算3个项目。
我的方法是为每个月设置一个计数器,然后开始忽略那个月内的项目,但我相信有一个更聪明,更高级的方法来做到这一点,一些额外的经验将是精彩的洞察力。
以下是一些显示我现在正在做的事情的代码:
For Each item In List
If item.Category = category1 Then
If item.status = status1 Then
category1Status1 = +1
Else
category1Status2 = +1
End If
ElseIf item.Category = category2 Then
If item.status = status1 Then
category2Status1 = +1
Else
category2Status2 = +1
End If
ElseIf item.Category = category3 Then
If item.status = status1 Then
category3Status1 = +1
Else
category3Status2 = +1
End If
''More of this looping
End If
Next
编辑:也许有必要注意我可以通过item.Date