如何在Open Office VBA中重新分配命名范围的地址?

时间:2010-01-21 19:31:43

标签: excel vba excel-vba openoffice-calc

在Excel VBA中,我使用以下命令重新定义命名范围的地址:

Ranges("MyRange").Cells(1).CurrentRegion.Name = "MyRange"

在Worksheet_Deactivate事件中。

这样,在更新电子表格后,MyDataRange始终引用整个数据。 确定Excel,但是当我尝试将其迁移到Open Office VBA时(OpenOffice.org 3.1.1 / OOO310m19 Build:9420)未定义Range的“.Name”属性。

然后,我尝试了:

ThisWorkbook.Names("MyDataRange").RefersTo = Range("MyDataRange").Cells(1).CurrentRegion

没有运气(“该属性是只读”错误)

再次,我尝试了:

ThisWorkbook.Names.Add ("MyDataRange", Range("MyDataRange").Cells(1).CurrentRegion)

这样可行,但之后所有带有引用命名区域的验证的单元格都会丢失原始引用,并在弹出窗口中显示“#NAME#”。

有没有办法重新分配命名范围的地址而不会丢失对它的引用?

TIA,

巴勃罗

1 个答案:

答案 0 :(得分:1)

我想知道this技术是否有效?