我已经完成了一个宏代码,我可以在其中显示包含“过期”一词的行并隐藏包含单词(已完成、待定、进行中、已延迟)的其他行。一切进展顺利,但需要 2 分钟宏工作和数据库仍然是空的。我读过数组可以解决这个问题并使宏工作得非常快。我试图将我的代码转换为数组但我没有成功。
仅供参考,我的第一行是 (18),列是 (Q),所以 Q18 具有第一个数据。
Sub Overdue()
On Error Resume Next
Application.ScreenUpdating = False
Worksheets("Dashboard-Data").Rows.EntireRow.Hidden = False
ltrw = Cells(Rows.Count, "Q").End(xlUp).Row
For i = 2 To ltrw
If Cells(i, 17).Value = "Overdue" Then
Cells(i, 1).EntireRow.Hidden = False
ElseIf Cells(i, 17).Value = "Pending" Then
Cells(i, 1).EntireRow.Hidden = True
ElseIf Cells(i, 17).Value = "In Progress" Then
Cells(i, 1).EntireRow.Hidden = True
ElseIf Cells(i, 17).Value = "Completed" Then
Cells(i, 1).EntireRow.Hidden = True
ElseIf Cells(i, 17).Value = "Delayed" Then
Cells(i, 1).EntireRow.Hidden = True
ElseIf Cells(i, 17).Value = "Delayed & Overdue" Then
Cells(i, 1).EntireRow.Hidden = True
Else
Cells.EntireRow.Hidden = False
End If
Next i
Application.ScreenUpdating = True
End Sub