Ste*_*eng 5 excel vba excel-vba
我是VBA编码的新手.假设我正在从Sheet3.Cell(23,4)中检索值的值,在VBA代码中是否有任何方法可以将其设置为变量?
例如,我已经更改了接口并让值保持在Sheet4.Cell(20,1),我的代码中的任何地方都引用Sheet3.Cell(23,4)需要更改为Sheet4.Cell(20,1) ).我在想是否有针对这种情况编码VBA的最佳做法?
是.为此,请确保声明工作表
例如
以前的代码
Sub Sample()
Dim ws As Worksheet
Set ws = Sheets("Sheet3")
Debug.Print ws.Cells(23, 4).Value
End Sub
Run Code Online (Sandbox Code Playgroud)
新规范
Sub Sample()
Dim ws As Worksheet
Set ws = Sheets("Sheet4")
Debug.Print ws.Cells(23, 4).Value
End Sub
Run Code Online (Sandbox Code Playgroud)
是的,将单元格设置为RANGE对象一次,然后在代码中使用该RANGE对象:
Sub RangeExample()
Dim MyRNG As Range
Set MyRNG = Sheets("Sheet1").Cells(23, 4)
Debug.Print MyRNG.Value
End Sub
Run Code Online (Sandbox Code Playgroud)
或者,您可以简单地将该单元格的值存储在内存中并引用实际值,如果这是您真正需要的.如果是数字,那么该变量可以是Long或Double或Single;或String:
Sub ValueExample()
Dim MyVal As String
MyVal = Sheets("Sheet1").Cells(23, 4).Value
Debug.Print MyVal
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
149646 次 |
| 最近记录: |