簡體   English   中英

在excel-vba中設置動態范圍

[英]Setting up a dynamic range in 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)

是相關的代碼示例。

我現在知道Sheet2.Range(“H1”)不返回一個int,它返回一個變量或什么?

我已經嘗試了一百萬種不同的東西,並且已經發現它們都不起作用。 必須有一種更好的方法來設置動態范圍。

不是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

這導致Sheet2上的以下內容:

在此輸入圖像描述

這最初是一個評論,但它也是解決方案所以我將其作為答案添加

Cells(8, 1) 8,1 Cells(8, 1) =“A8”。 如果你想要單元格H1,它將是Cells(1, 8)Cells(1, "H") 如果你想要細胞H4,它將是Cells(4, 8)Cells(4, "H")

或者,只是Range("H1")Range("H4")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM