Welcome to the Board!
You can use the INDIRECT function to build your formula dynamically, and you can incorporate the ROW function to handle your increasing number (as the ROW number the formula is being placed in is increasing also).
Let's say that the formula being posted above is being put in row 3 amd being copied down. So you want the formula in row 3 to reference Table 10, the formula in row 4 to reference Table 11, etc.
So the difference between the row number and the table number is always 7.
Your formula should look something like this:
Code:
[COLOR=#333333]=if(B$4="",if((or(INDIRECT("'table " & ROW()+7 & "'!$B9")="comment",INDIRECT("'table " &[/COLOR][COLOR=#333333] ROW()+7 &[/COLOR][COLOR=#333333] "'!$B9")=""),"",B$2&" / "&INDIRECT("'table " [/COLOR][COLOR=#333333]& ROW()+7 & "[/COLOR][COLOR=#333333]'!$B9")),"")[/COLOR]
Basically, you are just replacing each range reference of:
Code:
[COLOR=#333333]'table 10'!$B9[/COLOR]
with
Code:
[COLOR=#333333]INDIRECT('table " & ROW()+7 & "[/COLOR][COLOR=#333333]'!$B9")[/COLOR]
See here for more information on INDIRECT:
http://www.cpearson.com/excel/indirect.htm