Look up data from another sheet, a different workbook, or dynamically across multiple sheets.
To look up from a range on a different sheet, include the sheet name followed by an exclamation mark in the table_range:
=VLOOKUP(A2, Sheet2!$A$2:$C$100, 2, 0)
-- Look up A2 in column A of Sheet2, return column B
=VLOOKUP(A2, 'Product List'!$A$2:$C$100, 2, 0)
-- Sheet name with spaces needs single quotes around it=VLOOKUP(A2, [Products.xlsx]Sheet1!$A:$C, 2, 0)
-- Look up from another open workbook
-- When the other workbook is closed, the full path appears:
=VLOOKUP(A2, 'C:\Files\[Products.xlsx]Sheet1'!$A:$C, 2, 0)Look up from different sheets based on a cell value:
=VLOOKUP(A2, INDIRECT("'"&B1&"'!$A:$C"), 2, 0)
-- B1 contains the sheet name (e.g. "January", "February")
-- Change B1 to look up from a different sheet automaticallyINDIRECT recalculates every time anything changes in the workbook. Use it sparingly on large files.
=XLOOKUP(A2, Sheet2!$A$2:$A$100, Sheet2!$B$2:$B$100, "Not found")
-- Cleaner syntax than VLOOKUP for cross-sheet lookups
-- No column index number to worry about=IFERROR(VLOOKUP(A2,Jan!$A:$C,2,0),
IFERROR(VLOOKUP(A2,Feb!$A:$C,2,0),
IFERROR(VLOOKUP(A2,Mar!$A:$C,2,0),"Not found")))
-- Check January first, then February, then March
-- Returns first match foundPractice this formula yourself — type it in a real spreadsheet and get instant feedback. Free, no download needed.
Start the Excel Basics track free →