Dans Excel VBA, je redéfinissent l'adresse d'une plage nommée avec:Comment réaffecter l'adresse d'une plage nommée dans Open Office VBA?
Ranges("MyRange").Cells(1).CurrentRegion.Name = "MyRange"
en cas Worksheet_Deactivate.
De cette façon, après la mise à jour de la feuille de calcul, MyDataRange fait toujours référence à l'ensemble des données. Ok avec Excel, mais lorsque j'ai essayé de migrer vers Open Office VBA (OpenOffice.org 3.1.1/ OOO310m19 Build: 9420) la propriété ".Name" de la plage n'est pas définie.
Puis, j'ai essayé avec:
ThisWorkbook.Names("MyDataRange").RefersTo = Range("MyDataRange").Cells(1).CurrentRegion
sans chance ("la propriété est en lecture seule" erreur)
Encore une fois, j'ai essayé avec:
ThisWorkbook.Names.Add ("MyDataRange", Range("MyDataRange").Cells(1).CurrentRegion)
Cela fonctionne, mais après que toutes les cellules avec des validations que les références à la plage nommée perd la référence d'origine et montre "# NAME #" dans le popup.
Est-il possible de réaffecter l'adresse d'une plage nommée sans perdre les références?
TIA,
Pablo
Tout ce que vous comprendre, vous avez mes sympathies: http://stackoverflow.com/questions/1651901/what-do-i-nene-pas-do-in-order-pour-get-openoffice-org-calc -to-read-the-vba-code-in –
Je ne suis pas très OO savy, mais je me demande si cette technique pourrait fonctionner? http://www.ozgrid.com/Excel/DynamicRanges.htm – Oorang
@OOrang: cela fonctionne bien pour ce problème spécifique, merci – PabloG