使用两个Excel列中的参数创建多个命名范围

时间:2019-02-07 09:54:02

标签: excel vba

我在使用sql进行编码方面没有任何扎实的背景,所以我总是依靠stackoverflow和google来寻找答案。

所以我想创建多个命名范围,其名称取决于列A中的值,而“引用”(范围)则取决于列B。

我设法处理了一些代码,它们可以为我创建命名范围,但是我似乎找不到找到使vba逐行执行的方法。

这是我的专栏: Columns

这是我的vba代码:

Sub createNamedRange()

    Dim myWorksheet As Worksheet
    Dim myRangeName As String

    Set myWorksheet = ActiveWorkbook.ActiveSheet
    myRangeName = myWorksheet.Range("A1").Value


    ThisWorkbook.Names.Add Name:=myRangeName, RefersTo:=myWorksheet.Range("B1").Text

End Sub

1 个答案:

答案 0 :(得分:0)

所以您要做的是循环遍历所有行,对吧?

我用For Loop调整了您的代码。它在第1到4行之间循环。如果要在更多行中循环,只需调整循环设置即可。希望它对您有用。

Sub createNamedRange()

    Dim myWorksheet As Worksheet
    Dim myRangeName As String
    Dim row         As Long

    Set myWorksheet = ActiveWorkbook.ActiveSheet

        For row = 1 To 4
            myRangeName = myWorksheet.Cells(row, 1).Value
            ThisWorkbook.Names.Add Name:=myRangeName, RefersTo:=myWorksheet.cells(row,2).Text
        Next

End Sub