002*_*253 2 excel vba range excel-vba
我在excel中使用的VBA范围有点问题:
dim frameRefPoint As String
frameRefPoint = "4,4"
range(Cells(frameRefPoint).Offset(0,0), Cells(frameRefPoint).Offset(7, 7)).Interior ...
Run Code Online (Sandbox Code Playgroud)
这不符合我的预期.我认为指定的第一个单元格Range(Cells(4,4).Offset(0,0))应该是"D4",但是当我在代码中使用该范围时,该范围的第一个单元格是"D1"〜单元格(1,4).
单元格的地址属性(frameRefPoint)返回$ D $ 1.我在这里错过了什么?
小智 5
您不能通过.Cells(<row>, <column>)将值与临时逗号连接来跨越两个参数(例如).只是让它看起来像你编码的代码与合法代码不一样.但是,您可以为每个参数使用变量.
dim r as long, c as long, frameRefPoint As string
r = 4
c = 4
cells(r, c).resize(7, 7) = "this works"
frameRefPoint = "4,4"
'split the string on the comma and convert teh text-that-looks-numbers to actual numbers
cells(int(split(frameRefPoint, ",")(0))), int(split(frameRefPoint, ",")(1)).resize(7, 7) = "this also works"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
64 次 |
| 最近记录: |