Не могли бы вы попробовать:
tmpcell.formula = "='C:\Users\User1\Desktop\Folder1\[Page.xls]Sheet1'!A1"
Если это делает работу, то лучший сценарий вы все еще есть проблемы, если вы когда-либо переместить или связывайтесь с этой исходной книги, и даже если вы этого не сделаете, я думаю, что Excel все еще имеет тенденцию вести себя странно, ссылаясь на другие книги, подобные этому.
другие Ваши варианты бы (сначала убедитесь, что источник книга закрыта) открыть книгу, скопировать значения более, и закройте его:
dim tmpCell as range
set tmpCell = ThisWorkbook.Worksheets("Sheet3").Range("A1")
dim sourceWorkbook as Workbook
set sourceWorkbook = Workbooks.Open("C:\Users\User1\Desktop\Folder1\Page.xls")
dim sourceWorksheet as Worksheet
set sourceWorksheet = sourceWorkbook.Worksheets("Sheet1")
tmpCell.Value = sourceWorksheet.range("A1").Value
Application.DisplayAlerts = False
sourceWorkbook.Close
Application.DisplayAlerts = True
Последний вариант был бы сделать соединение ODBC в книгу - мне нравится этот второй вариант, хотя