Apache OpenOffice (AOO) Bugzilla – Issue 109271
ADDRESS function: cannot create absolute sheet name
Last modified: 2013-01-29 21:51:45 UTC
in oo 1.1.5 it was possible to create absolute addresses, for example: =ADRESSE(5;1;1;"$'Sheet 1'") result: $'Sheet 1'.$A$5 but in OO 3.2 result for =ADDRESS(5;1;1;1;"$'Sheet 1'") is: '$''Sheet 1'''.$A$5 this range can't be used for a named range ...
Created attachment 67823 [details] address funtion absolute sheet name
Confirm. In OOo2.4.3 the formula =ADDRESS(5;1;1;"$'Sheet 1'") returns $'Sheet 1'.$A$5 But in OOo3.2.0 it returns '$''Sheet 1'''.$A$5 You can get the desired address with the formula ="$" & ADDRESS(5;1;1;"Sheet 1")
The entire 4th parameter is a sheet name, the $ and embedded ' are just part of the name. We had to change the semantics there because now almost all characters are allowed in a sheet name and the argument can't be copied as. Behavior to this regard is now identical with Excel. One could argue that the 3rd Abs parameter should also have an effect on the sheet part of the address, in which case the argument should be just "Sheet 1" to produce $'Sheet 1'. However, this is not what Excel does because it doesn't know relative sheet names anyway. I can only imagine one use case where this would be needed: use the resulting address string with an INDIRECT() as a named expression on different sheets and not have the sheet reference move along with. In this case we may indeed have the 3rd Abs parameter need to affect the sheet part as well for interoperability with Excel. See Regina's suggestion for how to construct the desired result.