【发布时间】:2014-10-06 17:05:08
【问题描述】:
我想将数据从工作簿 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
【问题讨论】: