excel中用宏进行循环判断并作出动作

2024-12-21 19:04:25
推荐回答(2个)
回答1:

一定要vba代码么? 条件格式也可以完成啊
你选中A4:A13区域后
条件格式—突出显示单元格规则—等于
值:“已输俊龙” 格式:自定义格式—填充 即可

如果非要代码。。。。。
估计你的代码是录制的 所以有一个selection
循环的时候要改成具体的range对应
另外 你原来的那个else有点多余。。。。。
以下仅供参考

Sub M_madegreen()
' 条件满足时,区域变成绿色
' 快捷键: Ctrl+j
'定义一个变量I,初始值为0
Dim I As Integer
I = 0

Do While I < 10
Range("A" & 4 + I).Select
If Range("A" & 4 + I) = "已输俊龙" Then '判断单元格内容是否为真
Range("A" & 4 + I).Interior.ColorIndex = 12 '若为真,则染成绿色
End If
I = I + 1 '下移一行
Loop
End Sub

如有问题请详述

回答2:

Selection.Interior.PatternColorIndex = 12 '若为真,则染成绿色
改为
Selection.Interior.ColorIndex = 10 '若为真,则染成绿色

你的代码不是很有效率,给你改了下:
Sub M_madegreen()

Dim i
For i = 0 To 9
If Range("A" & 4 + i).Text = "已输俊龙" Then '判断单元格内容是否为真
Range("A" & 4 + i).Interior.ColorIndex = 10 '若为真,则染成绿色
Else: Range("A" & 4 + i).Interior.ColorIndex = 0 '否则不染色
End If
Next i

End Sub