如何在OpenOfficeVBA中重新分配命名区域的地址?

如何在OpenOfficeVBA中重新分配命名区域的地址?,vba,excel,openoffice-calc,Vba,Excel,Openoffice Calc,在Excel VBA中,我使用以下命令重新定义命名区域的地址: Ranges("MyRange").Cells(1).CurrentRegion.Name = "MyRange" 在工作表中,取消激活事件 这样,在更新电子表格后,MyDataRange始终引用整个数据。 Excel可以,但当我尝试将其迁移到OpenOfficeVBA(OpenOffice.org 3.1.1/ OOO310m19内部版本:9420)未定义范围的“.Name”属性 然后,我试着: ThisWorkbook.Nam

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

Ranges("MyRange").Cells(1).CurrentRegion.Name = "MyRange"
在工作表中,取消激活事件

这样,在更新电子表格后,MyDataRange始终引用整个数据。 Excel可以,但当我尝试将其迁移到OpenOfficeVBA(OpenOffice.org 3.1.1/ OOO310m19内部版本:9420)未定义范围的“.Name”属性

然后,我试着:

ThisWorkbook.Names("MyDataRange").RefersTo = Range("MyDataRange").Cells(1).CurrentRegion
ThisWorkbook.Names.Add ("MyDataRange", Range("MyDataRange").Cells(1).CurrentRegion)
运气不佳(“属性为只读”错误)

我再次尝试:

ThisWorkbook.Names("MyDataRange").RefersTo = Range("MyDataRange").Cells(1).CurrentRegion
ThisWorkbook.Names.Add ("MyDataRange", Range("MyDataRange").Cells(1).CurrentRegion)
这是可行的,但在这之后,所有引用了命名区域的验证单元格都会丢失原始引用,并在弹出窗口中显示“#NAME#”

是否有任何方法可以在不丢失对命名区域的引用的情况下重新分配该区域的地址

蒂亚


巴勃罗

我想知道这项技术是否管用?

不管你怎么想,我都同情你:我不是很精明,但我想知道这项技术是否管用@OOrang:这对这个特定的问题很好,谢谢,我把它移到了一个答案上,因为它起作用了:)