【发布时间】:2019-05-11 22:46:54
【问题描述】:
尝试创建一个循环,首先选择范围 T17:T35 并将其着色为黄色 RGB(255, 235, 59)。
然后向左循环,在每列的顶部添加 1,从底部删除 1,直到没有单元格要着色。
Sub Smile()
Dim Counter As Integer
Dim Column As Integer
Dim Row As Integer
Counter = 18
Row = 18
Column = 20
Worksheets("Sheet1").Range("A:BB").ColumnWidth = 1.25
Worksheets("Sheet1").Range("1:200").RowHeight = 8
Worksheets("Sheet1").Range("A1:BB200").Interior.Color = RGB(135, 206, 235)
Worksheets("Sheet1").Range("U16:AA56").Interior.Color = RGB(255, 235, 59)
'Worksheets("Sheet1").(R[17]C[20]).Interior.Color = RGB(255, 235, 59)
Worksheets("Sheet1").Range("T17:T56").Interior.Color = RGB(255, 235, 59) 'Example Row 1
Worksheets("Sheet1").Range("S18:S55").Interior.Color = RGB(255, 235, 59) 'Example Row 2
Worksheets("Sheet1").Range("R19:R54").Interior.Color = RGB(255, 235, 59) 'Example Row 3
'Do While Counter > 0
' Worksheet.Range(R[Row]C[Column]:T" & Counter + 18).Interior.Color = RGB(255, 235, 59)
' Counter -1
'Loop
End Sub
代码中带有 cmets Example Row 1、Example Row 2、Example Row 3 的行是我想要在循环中实现的目标的开始,直到起点和终点之间的范围差为 0。
【问题讨论】:
-
所以
T17:T35是第一个范围。循环中的下一个范围是什么?你能展示一些样本数据的前后屏幕截图吗?你的代码没有设置循环,你的解释也不是很清楚,至少对我来说不是 -
为什么一定要
R1C1?这是由于对如何将两个变量放入.Range的理解有限吗? -
@urdearboy 更新了问题以包含循环意图。