【发布时间】:2019-11-20 19:05:28
【问题描述】:
我对下面的代码有疑问。我刚刚开始学习这个,当我做了一个简单的练习时,结果发现代码真的很随机。
有时什么都不做,有时只选择一种情况,但从未应用正确的格式。我很困惑。
你能帮忙解决这个问题吗? ;)
Sub Colors()
Dim Check As String
Check = ActiveCell.Value
Range("A2").Select
Do While ActiveCell.Value <> ""
Select Case Check
Case "Red"
ActiveCell.EntireRow.Interior.Color = RGB(200, 100, 100)
Case "Blue"
ActiveCell.EntireRow.Interior.Color = RGB(100, 100, 200)
Case "Green"
ActiveCell.EntireRow.Interior.Color = RGB(100, 200, 100)
End Select
ActiveCell.Offset(1, 0).Select
Loop
End Sub
【问题讨论】:
-
强烈建议您阅读this question。
-
这完全取决于您在工作表上的数据以及您的期望。您能否提供一个数据示例?
-
这个过程被调用时的
ActiveCell地址是什么,它的值是多少?请注意,Check对于循环的每次迭代都是常量... -
如果这是错误的,您期望的行为是什么?
-
现在,此代码正在获取您在开始运行时碰巧选择的任何单元格的值,并将其存储在
Check中。然后,从单元格 A2 开始,它使用颜色为列 A 的单元格着色,具体取决于来自最初选择的单元格的值。一旦它碰到一个有值的单元格,它就会停止。这就是你的意思吗?
标签: excel vba select-case