If you're filling in an order form in Excel, you can use the VLOOKUP function to find the selling price for each item in the sales order. For example, in the screen shot below, the order form is on the Orders worksheet, and a VLOOKUP formula in column D pulls the cost from a pricing table on the Prices worksheet.

### Lookup Range in Another Workbook

However, you might want to keep your price list separate from the orders workbook, so the prices are easy to update. If your price list is in a different workbook, you can still use a VLOOKUP formula to pull the data, by referring to the external list. To refer to another workbook in a VLOOKUP formula, follow these steps.

- Open both workbooks (this step isn't mandatory, but makes it easier to create the link)
- Create the VLOOKUP formula, and for the table_array argument, select the lookup range in the other workbook. In the screen shot below, the lookup table is in the PriceList.xlsx workbook, in a range named PriceLU.

### Closing the Lookup Workbook

While the price list lookup table workbook is open, the VLOOKUP formula will show the workbook name and the referenced range address or range name. You can see the PriceLU name and workbook information in the formula bar, in the screen shot below.

If the price list lookup table workbook is closed, the VLOOKUP formula will still work, and the full file path for the price list lookup table workbook will be shown in the formula.

### Watch the Video

To see the steps for referring to a VLOOKUP range in another workbook, please watch this short Excel tutorial video.

_____________

Hi

I have been reading your blogs for sometime and I just wanted to thank you for your tremendous contribution and acknowledge that though there are many MVPs in the field writing blogs but you are the best in your area especially with this added feature of videos as it makes lot easier to understand the whole concept. However, I would really appreciate if you can provide some material on the excel charting because as I said there many bloggers we would like Debra to teach us charting skills in her typical easy to understand style alongwith videos.

Here I tried to access above link but found the below message:

Not Found

Sorry, but you are looking for something that isn't here.

Thanks and kind regards

Fakhar

I understand this. What I am trying is looking up info from a workbook with multiple sheets. Any suggestions?

Hi David,

To look up info from a different worksheet in the same excel file, approach is just the same - as a "table_array" you just select the area in different worksheet and the rest of steps is exactly the same.

Fantastic presentation - Thank you very much. Now a question: Is it possible to get the 'found data' to show up in the same colour text as that of the source cell, if the source cell varies in different rows in the source workbook?

Thanks, this is a great tutorial!

Could you tell me how I'd alter the formula to look up a value on another spreadsheet that is created on a daily basis but that is always in the same format (eg 'prices 28/08/2012')?

It would always be called prices folowed by today's date, could I use the fomula 'today()' in the file lookup?

Thanks

This Instructions are user friend. Thank you.

Hi gurus,

i have issue with Vlookup formula, my case is;

i am using different file to pick a value against the reference field, and file name change is depend on field A1 in master file, so i want some adjust in Vlookup formula regarding file name means file name should automatically

change when value of A1 change.

other details,

A1 value = file name

Indirect function used but limited as required fie should open.

'IF' function can not be used bcoz the number of file are greater the 8.

pls guide.

regards

Muhammad shoaib

Hi Shoaib,

M searching answer for the same query. Have you got the answer??

If u got the answer can you please please tell me or reply on this comment............

Thanks in advance.. :-)

very good.

IF(ISNA(VLOOKUP(C7,'Z:\Online,CC&FCRA Reports 2012 - 2013\Reports\[WebReport12-13.xlsx]Packages'!A:O,6,FALSE)),"",VLOOKUP(C7,'Z:\Online,CC&FCRA Reports 2012 - 2013\Reports\[WebReport12-13.xlsx]Packages'!A:O,6,FALSE))&IF(ISNA(VLOOKUP(C7,'Z:\Online,CC&FCRA Reports 2012 - 2013\Reports\[WebReport12-13.xlsx]CombinedFinReport'!A:O,6,FALSE)),"",VLOOKUP(C7,'Z:\Online,CC&FCRA Reports 2012 - 2013\Reports\[WebReport12-13.xlsx]CombinedFinReport'!A:O,6,FALSE))&IF(ISNA(VLOOKUP(C7,'Z:\Online,CC&FCRA Reports 2012 - 2013\Reports\[WebReport12-13.xlsx]Giveisha'!A:O,6,FALSE)),"",VLOOKUP(C7,'Z:\Online,CC&FCRA Reports 2012 - 2013\Reports\[WebReport12-13.xlsx]Giveisha'!A:O,6,FALSE))

6th Column is date

but we get the result is 41276

how to get exact date values from another workbooks datas

@balki

I don't understand your lengthy formula.

But 41276 on a place where a date is expected looks like a cell to be first formatted as a date.

I don't know where to post a question that I need some help with.

I am using an Index function to search a second table for information. Instead of specifying the specific table in the formula, can I designate the Range, Row, and Column Values in the Index Function (below) within a cell on the same sheet that directs the formula to the required Range, Row, and Column Value on a second table? I know I can develop a "name" but I need to be able to edit which table I want to search on the fly.

=INDEX(('FY13'!$A$1:$CA$1000),MATCH($F97,('FY13'!$A$1:$A$1000),0),MATCH(B$83,('FY13'!$A$1:$CA$1),0)))

I made several worksheets in 1 excel file.

I would like to click on a cell in woorbook #1 and take me to workbook #2 0r #3 etc. Is this possible?

@James Nikita

I assume, you mean "take me to workSHEET #2" (not workbook).

The could do this:

In your cell on worksheet #1 press Control-K.

This will open a hyperlink dialog.

In the edit field on top "text to be displayed" enter a friendly name to the jump target, e.g. "goto worksheet #2"

In the tree titled "or select a place in document:" click on "Sheet 2".

Press OK.

May be the title of displayed will be slightly different. I use a German Excel.

when i was try to lookup value from another workbook it could not pick its reference from the workbook i also save it on my desktop but still it could not be selected for table array

Do you have a solution for referencing large tables with 19+ columns? I've noticed that the Vlookup formulas seem to work for the earlier columns, but provide a #REF! error after column 6.

Hi Jo. Would be safest to just copy the VLOOKUP table into your destination workbook. References across workbooks are a recipe for disaster - especially given that if someone changes the structure of the source workbook while the destination workbook is closed then the VLOOKUP won't work and will return incorrect data.

You can also use MS Query to pull data from one spreadsheet to another. Are you familiar with it? It's available via the Data tab in Excel 2010:

Data>From Other Sources>From Microsoft Query

A google search should point you in the right direction.

Hello,

I have followed the tutorial and video and everything looks good but I get a #REF! error. Here is my formula:

=VLOOKUP(P66,'[Seminar Schedule.xlsx]Sheet1'!$B1:$B500,11,FALSE)

I'm not sure why this error is showing.

Any hints?

Thanks,

John

@John your formula is looking for a result in column 11, so your lookup table should be at least 11 columns wide. Try changing the lookup range to $B$1:$L$500

Thank you Debra, that worked smashingly!

I get a #ref! error when I use the following formula:

=VLOOKUP(B44,'C:\Users\rlewison\Desktop\[itemid.xlsx]Sheet1'!$A$5:$A$114,'C:\Users\rlewison\Desktop\[itemid.xlsx]Sheet1'!$B$5:$B$114,FALSE)

any ideas?

thanks,

Rian

=VLOOKUP(B44,'C:\Users\rlewison\Desktop\[itemid.xlsx]Sheet1'!$A$5:$B$114,2,FALSE)

Try this

I have a Vlookup refence to another file that works perfectly when the file is open, but not when the file is closed. The error is #REF.

Here is the formula :

=IFERROR(VLOOKUP([@['# commande]];'T:\DuraBac\Adam + Feu\Restructuration\Département Production\Tableau multiples\Dessin-commandes.xlsm'!Table120[#Data];14;FALSE);"Erreur")

Can someone help me with this ?