How do I get a range of data from a closed workbook into an array in VBA? Preferably without opening the workbook.
Thanks
If you're only interested in the data values in the closed workbook, you can use an empty range of your open workbook as a scratch area and then fill that range with an array formula:
ScratchWorksheet.Range("B1", "B3").FormulaArray = "='PathToClosedBook\[ClosedBook.xlsx]Sheet1'!$B$1:$B$3"
After you're finished you can delete the FormulaArray so you don't leave external links in the open workbook.