This problem has been persistent for a while, just happens every so often at random times, nothing changing. I also do not know how to reproduce the problem, but I\'ll give a de
Here's the easy work-around I've found for this bug:
I do a Find-and-Replace ("search within formulas") for "=" wherever I have the importrange error (=REF!) (or just for the whole sheet) and I replace-all with a "#" in order to make it all be text rather than formula. Then I do another Find-and-Replace over the same area and replace-all the "#" with "=" again. This consistently fixes the issue.
I had the same issue, and found a solution!
Please reduce the source file's size
To reduce, split it up and again have the import-range referenced
You now will be able to see the imported range!
If you think the above isn't the situation, the chances might be
Your cell is occupied so remove all formatting and clear all the cells before importing the range.
Still not working? Let God help you out!
This is a little late, but I came across it in a search so it might help someone else - try something like this:
=IFERROR(ImportRange(SpreadSheet_GUID,"Bookings!P:P"),
IFERROR(ImportRange(SpreadSheet_GUID,"Bookings!P:p"),
IFERROR(ImportRange(SpreadSheet_GUID,"Bookings!p:P"),
ImportRange(SpreadSheet_GUID,"Bookings!p:p"))))
Basically the idea is to force Google to recalc using variations of the original address (upper/lower case column letters).
This happens, indeed, in my case simply Ctrl+X, waiting for a second, and then pasting the formula back makes the Sheets engine re-do the import and then it succeeds to import. In case you can not do this procedure manually, you should use Tim's solution.
I found this solution, work fine for me:
In both spreadsheets insert an =now() equation in a random cell, say Z1 In both spreadsheets insert an =importrange() function that references the now function of the other spreadsheet. Go into your spreadsheet settings and choose to recalculate on every minute. I tried a lot of other suggestions including using the =now() function, the now URL trick in this thread, or Apps Script to insert random text on a set interval, but nothing would force importrange to update except a manual edit of the source sheet.
https://webapps.stackexchange.com/questions/60324/how-can-i-get-google-sheets-to-auto-update-a-reference-to-another-sheet
I had the same problem and solved it by using =IF(ISERROR(A1);IMPORTRANGE();IMPORTRANGE()) in the cell where earlier IMPORTRANGE used to be and by turning on Iterative calculation in spreadsheet’s location & calculation settings. Hope it help someone