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

使用两个excel列中的参数创建多个命名范围,excel,vba,Excel,Vba,我在使用sql编写代码方面没有任何深厚的背景,所以我总是依赖stackoverflow和google来寻找答案 所以我想创建多个命名范围,其名称依赖于A列中的值,而“refere”(范围)依赖于B列 我已经设法处理了一些代码,他们可以为我创建命名范围,但我似乎找不到让vba逐行执行的方法 以下是我的专栏: 这是我的vba代码: Sub createNamedRange() Dim myWorksheet As Worksheet Dim myRangeName As Stri

我在使用sql编写代码方面没有任何深厚的背景,所以我总是依赖stackoverflow和google来寻找答案

所以我想创建多个命名范围,其名称依赖于A列中的值,而“refere”(范围)依赖于B列

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

以下是我的专栏:

这是我的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到第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

所以你要做的是在你所有的行中循环,对吗

我用密码调整你的密码。它在第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

谢谢你的回答。很好用@谢谢你的回答。很好用@施密特