下面的代码可以工作,但现在我需要它来处理列范围而不是单个单元格范围。 我需要替换:将单个单元格范围更改为列范围
CJ3单元格到CJ列(从第3行开始);
CK3单细胞到CK列(从第3行开始);
CM3单细胞CM列(从第3行开始);
CN3单细胞到CN列(从第3行开始);
CO3单元格到CO列(从第3行开始)。
请任何人都可以帮忙吗?
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Range("CJ3").Value = "FOLLOW UP" And Range("CM3").Value = "" And Range("CN3").Value = "" Then
Range("CO3").Value = "FOLLOW UP"
ElseIf Range("CJ3").Value = "FOLLOW UP" And Range("CM3").Value > 0 And Range("CN3").Value = "" Then
Range("CO3").Value = "AWAITING APPROVAL"
ElseIf Range("CJ3").Value = "FOLLOW UP" And Range("CM3").Value > 0 And Range("CN3").Value > 0 Then
Range("CO3").Value = "CLOSED"
ElseIf Range("CJ3").Value = "NO FOLLOW UP" And Range("CN3").Value = "" Then
Range("CO3").Value = "AWAITING APPROVAL"
Range("CK3:CM3").Value = "N/A"
ElseIf Range("CJ3").Value = "NO FOLLOW UP" And Range("CN3").Value > 0 Then
Range("CO3").Value = "CLOSED"
Range("CK3:CM3").Value = "N/A"
End If
End Sub
您可能想要“遍历列中的每个单元格”。这是一个非常常见的任务,初学者经常会问它的代码。您可能会在谷歌搜索引号之间的术语。 – Variatus
我尝试过“通过列中的每个单元格循环”,但它减慢了表格的速度。例如:Dim i As Long For i = 1 To Rows.Count If Cells(i,88).Value =“FOLLOW UP”and Cells(i,91).Value =“”And Cells(i,92)。 Value =“”Then Cells(i,93).Value =“FOLLOW UP” End If Next i End Sub – Zero