VBA, 同一列里, 用不同的颜色标记值不一样的单元格, 如果相同值的单元格出现一次以上, 只对最后面出现的值相同的单元格颜色, 之前的保持不变
时间: 2024-03-09 14:49:10 浏览: 166
您可以使用VBA代码来实现这个需求,以下是一个示例:
```vb
Sub ColorCells()
Dim lastRow As Long
Dim currentVal As String
Dim prevVal As String
Dim count As Integer
lastRow = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row '获取数据的行数
For i = lastRow To 1 Step -1 '从最后一行开始循环
currentVal = Cells(i, 1).Value '获取当前单元格的值
If currentVal = prevVal Then '如果当前值等于上一个值
count = count + 1 '计数器加1
Else
count = 1 '重置计数器
End If
If count = 1 Then '如果当前值是第一次出现
Cells(i, 1).Interior.ColorIndex = 3 '标记为黄色
Else
Cells(i, 1).Interior.ColorIndex = 4 '标记为绿色
End If
prevVal = currentVal '将当前值保存为上一个值
Next i
End Sub
```
这段代码会遍历第一列的所有单元格,如果当前值是第一次出现,则将其标记为黄色;如果当前值不是第一次出现,则将其标记为绿色。注意,这里使用了计数器来判断当前值是否是第一次出现。
希望这个代码示例能够帮到您!
阅读全文
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)