[英]How to create Named Ranges using a loop in Excel VBA?
我想在我的 Excel 工作表中創建命名范圍,稍后應將其復制到另一個工作表。
我創建了一個命名范圍的代碼,如下所示:
Sub Sample1()
Dim RangeName As String
RangeName1 = Worksheets("DB_Elements").Range("B3")
ThisWorkbook.Names.Add Name:=RangeName1, RefersTo:=Worksheets("DB_Elements").Range("B3:V14")
RangeName2 = Worksheets("DB_Elements").Range("B17")
ThisWorkbook.Names.Add Name:=RangeName2, RefersTo:=Worksheets("DB_Elements").Range("B17:V28")
但是,這需要再重復 85 次。 所以我需要在我的 VBA 中創建一個循環,每次都會創建一個基於“B”單元格值的新命名范圍,該單元格值總是向下偏移 14 行。 命名范圍總是由 12 行和 21 列組成。
嘗試這個:
Sub Sample1()
Dim i As Long
Dim j As Long
With Worksheets("DB_Elements")
For i = 1 To 85
j = (i - 1) * 14 + 3
ThisWorkbook.Names.Add Name:=.Range("B" & j), RefersTo:=.Range("B" & j & ":V" & (j + 11))
Next
End With
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.