【发布时间】:2014-01-24 23:09:11
【问题描述】:
我有一个包含 60 行和 7 列整数值的 Excel 工作表。第一行是评论员,前三列也是评论员(我必须省略这些)。
所以,我想遍历列范围 3:7 (D:H) 中的行范围 2:60 以找到一行中单元格的最大值。答案转到第一列中的单元格。
我有什么(简化视图):
测试1 测试2 测试3 测试4 一个 1 2 3 4 两个 5 6 7 8 三 1 2 5 4 四个 1 7 3 4我想要什么:
测试1 测试2 测试3 测试4 最大值 一个 1 2 3 4 4 两个 5 6 7 8 8 三 1 2 5 4 5 四个 1 7 3 4 7如果我手动创建宏,我会收到:
range("D2:I2").Select
range("I2").Activate
ActiveCell.FormulaR1C1 = "=MAX(RC[-5]:RC[-1])"
range("D3:I3").Select
range("I3").Activate
ActiveCell.FormulaR1C1 = "=MAX(RC[-5]:RC[-1])"
range("D4:I4").Select
range("I4").Activate
ActiveCell.FormulaR1C1 = "=MAX(RC[-5]:RC[-1])"
酷...但我想用循环遍历它。
我试过了,但没有用:
Sub max()
For num = 2 To 4
range("D&num:I&num").Select
range("I & num").Activate
ActiveCell.FormulaR1C1 = "=MAX(RC[-5]:RC[-1])"
Next num
End Sub
有什么想法吗?
【问题讨论】:
-
尝试将
range("D&num:I&num").Select更改为range("D" & num ":I" & num).Select和range("I & num").Activate更改为range("I" & num).Activate