Just to clarify what I'm talking about -
Say if I have the reference:
='C:\[EIC99.xls]Reports ''99'!$B$14
I'd like to be able to replace the 14 row reference with the value of a cell on the current workbook without having to open the source workbook or use a macro.
Use the INDIRECT function:
Put the row number in a cell, eg A1. Then
=INDIRECT("'C:\[EIC99.xls]Reports ''''99'!$B$" & A1)
should now change as you vary A1.
- Marcus
PS - you may run into problems with all the single quotes in your sheet name...
That works just fine so long as the source is open. The problem is that the source file is huge - 3-4MB huge. The idea is not to have to open it.
I can get the information several ways as long as the source is open but the only way I can get it with the source closed is through an absolute reference to one fixed cell.
The only way I can think to do it is to carry the information from the source into hidden cells in the destination sheet. That defeats the purpose though as the destination would end up bloated too.
Bryan,
I think it's time to use VBA. John Walkenbach has a nice function to get a value from a closed file. Check it out here:
http://www.j-walk.com/ss/excel/tips/tip82.htm
HTH,
Chris
That's what I've started on now... was looking for the simple, elegant solution and it doesn't look like it exists. Thanks.
Got this from a newsgroup:
=INDEX('D:\[x.xls]Sheet1'!$1:$65536,2,2)
The last two numbers there are the references to the cell and can be references to cells in the destination sheet.