Here's slightly different approach, but basically same idea. This allows you to enter data at either the page or shape level. All shapes will get the same data in this arrangement. You can drop shape on a new page, and formulas will hold.
There is a caveat though. Each page requires a User and a Data section. The key, to avoid circular argument issue is to use the SETATREF fcns and re-direct the value to a placeholder.
The User section contains the placeholder. In the attached example, there is a User.R1 in the Page's shapesheet. The Data section is for entering data. In this example, Prop.R1. The Prop.R1.Value cell has the formula: =SETATREF(User.R1,SETATREFEVAL(SETATREFEXPR())). Initially, there is no value for the setatrefexpr. It will get this via the Page>Data entry when you assign some data to the page.
For the shape, it's a bit easier, as there is only a Data entry needed, no user section. In the example, it's, Prop.R1. The formula is =SETATREF(ThePage!User.R1,SETATREFEVAL(SETATREFEXPR())). That's it. Then, last piece, insert>field>shapedata. This displays whatever is entered either via the page or via the shape. Whichever was last accessed. Both send the info to the Page's User.R1.
Now, concerning your loooooonnnnngg formula. Yikes! Very difficult to create in first place. More difficult to trouble shoot. Very difficult to follow and understand. A year from now, it will be impossible to remember what you did / modify. I suggest, breaking the formula into sections. Each if section could be a separate entry either in User or Scratchpad section. So, the 1st IF would be, say, User.IF1. Based upon results, it could point to either User.IF2 or User.IF3. Each User entry is simple. The test is easy to edit, and the path is easy to follow. My recommendation.
Finally, for more SETATREF info and lot's of examples, see
http://visguy.com/vgforum/index.php?topic=6383.msg26747#msg26747Wapperdude