我在Excel VBE中使用VBA,但是c#或vb很好。 这个概念应该适用于各种语言。
答案 0 :(得分:3)
不确定你的意思。你想要从下到上,而不是从上到下?
这应该做:
Dim myrange As Range
Set myrange = Range("B3:E10")
Dim row As Integer, col As Integer
For row = myrange.Rows.Count To 1 Step -1
For col = myrange.Columns.Count To 1 Step -1
Debug.Print myrange(row, col).Value
Next col
Next row
答案 1 :(得分:1)
如果您正在处理多个单元格的范围而不需要修改单元格,请始终考虑将值拉入数组并使用它:代码和工作表之间的交互相对(非常)昂贵。如果您使用的是.NET程序集,那么它会增加一倍(可能是三倍,甚至更多),因为往返还有几个步骤。
在VBA中,类似这样:
Dim vals As Variant
Dim row As Long, col As Long
vals = Range("A1:Z100") ' or whatever
For col = UBound(vals,2) To LBound(vals,2) Step -1
For row = UBound(vals) To LBound(vals) Step -1
DoSomethingInterestingWith vals(row, col)
Next
Next