在excel-vba中设置动态范围

2 excel vba excel-vba

我的代码基于此. Excel VBA - 选择动态单元格范围

我正在尝试找到创建动态范围的语法.示例:我总是从D8开始,但范围的上限基于另一个单元格中的int计数.[H4]

Dim count As Integer
count = Sheet2.Cells(8,1).Value
Set refRng = Sheet2.Range("D8:" & Cells(8, i).Address)
Run Code Online (Sandbox Code Playgroud)

是相关的代码示例.

我现在知道Sheet2.Range("H1")不返回一个int,它返回一个变量或什么?

我已经尝试了一百万种不同的东西,并且已经发现它们都不起作用.必须有一种更好的方法来设置动态范围.

why*_*heq 6

不是100%肯定你想要实现的目标,但是在搞乱范围方面可能这是一个开始:

Option Explicit

Sub select_Range()

Dim count As Integer
count = ThisWorkbook.Worksheets("Sheet2").Range("A8").Value

Dim i As Integer
i = count

Dim refRng As Excel.Range
Set refRng = ThisWorkbook.Worksheets("Sheet2").Range("D8:D" & i)

refRng.Select

End Sub
Run Code Online (Sandbox Code Playgroud)

这导致以下结果Sheet2:

在此输入图像描述