小编Rog*_*ahl的帖子

引用全局命名范围而不引用工作表

我想将工作簿x中的一组命名范围中的数据导出到工作簿y中的另一组范围.要导出和输出的范围的名称在表"Table_Export"中指定.问题是我不想在这些相应的范围所在的工作表中加注,看到我不知道实际的工作表名称.但由于范围是全局的,因此应该可以在vba中引用它们而不引用相应的工作表?

相关代码可以在下面找到,其中if语句中的两个星号行中的任何一行都是我想要完成的.

Dim x As Workbook, y As Workbook    
Set x = ThisWorkbook
Set y = Workbooks.Open(Range("Export_to").Value)

Dim export_control As ListObject    
Set export_control = x.Sheets("Control").ListObjects("Table_Export")

Dim lr As Excel.ListRow    
For Each lr In export_control.ListRows
    If lr.Range(1).Value <> 0 Then    
        *'y.Names(lr.Range(2).Value).RefersToRange.Value = x.Names(lr.Range(1).Value).RefersToRange.Value*    
        *'y.Range(lr(Range(2).Value).Value = x.Range(lr(Range(1).Value).Value*    
    End If
Next
Run Code Online (Sandbox Code Playgroud)

excel vba range

6
推荐指数
1
解决办法
3113
查看次数

标签 统计

excel ×1

range ×1

vba ×1