Let's look first at why the function you've posted isn't working. VLOOKUP needs a two-dimensional data range to work with. It looks for your search_key (param 1) in the first column of range specified (has to be the first column - an unfortunate limitation of VLOOKUP), and returns a value from the matching row. The column returned is specified by param 3, index, essentially 'nth column in my range' (so 1 = your search key).
To get around the first column limitation, you could create an extra column with the data you want to return that is to the right of your search_key column. But it's messy, and looking at your data it won't help anyway.
That's because VLOOKUP only ever returns one value. If you have multiple matches for the search_key, it only gives you the first one it finds. I see that you have a few sizes of product with multiple part numbers, so we're going to need a different function.
I'd suggest FILTER for this job. What FILTER does is take a 2D data range, allow you to filter it down based on any column or row within that range, and return all the matching data - it actually fills neighbouring cells if there's enough data. I always think it's a bit weird to think of a function in a cell that actually acts on other cells, but that's how it works.
So what we could do is (in cell E23 ONLY):
filter(Data!A3:B2000,Data!B2:B2000 = E21)
To break that down, look in all of Data for rows where the value of column B matches E21.
Problem is that will return too many columns, and potentially too many rows. If there's data in the neighbouring cells that Sheets is going to put data into, the function will just fail. So we can use the ARRAY_CONSTRAIN function to limit the result of the filter:
=iferror(array_constrain(filter(Data!A3:B2000,Data!B3:B2000 = E21),4,1))
Fortuitously the data we want is in the left column of the range, so we just have to limit it down to one column (last param), and four rows (as you only have four rows available - you could add more if you like).
I've also added an IFERROR to blank it out if there are no results. It's not strictly what it does, but it's much cleaner than using an IF function to check ISNA, and it does the job.
You don't need to put any formula in the other three cells - the FILTER (limited by ARRAY_CONSTRAIN) will put the data there for you.
From there I'd say the easiest way to retrieve the bundle value is with a VLOOKUP:
=iferror(vlookup(E23,Data!A$3:C$2000,3,false),"")
So, look in our data range for the item value in E23, then return the third column. There might be faster ways, but this is clean, easy, and for a relatively small amount of data I wouldn't worry about the speed of it. Again, wrapped with an IFERROR. I just filled down for the other three rows - something I always get caught out by with VLOOKUP is forgetting to put the $s in where appropriate.
Here's the copy I made to work on, with the formulas filled in to see: https://docs.google.com/spreadsheets/d/1yKv6f9ciySvSPJ0Iy2AmfehpO7dVj38HWnlS2slrc5M/edit?usp=sharing
Unfortuately I don't have enough reputation to post links to each of the functions full documentation, but you can find them all here: https://support.google.com/docs/table/25273?hl=en
Hope that helps!
If I understood correctly, you should check out the VLOOKUP function.
If you have a chart with names at the first column and lets say height on the second one, you can use VLOOKUP to find the height of a person, by searching his name in the chart.
For example:
Column A has a list of names: E11=Tom, E12=Ben, E13=Dan.
Column B has their height in cms: F11=182, F12=169, F13=177.
In Cell D40 you have the name Ben. You want to display his height in cell D41.
So, in cell D41 you should type:
=VLOOKUP(D40,E11:F13,2,FALSE)
Where D40 is the name you are looking for in the chart, E11:F13 is the chart you are searching in, 2 is the chart's column number from which you want to extract the value (which in this case will be column E), and FALSE means you want an exact match of the person's name.
You can combine this with IFNA - a function that gives you the value you want if it is available, and another value of your choice if the function returns #N/A.
In this case, it would be:
=IFNA(VLOOKUP(D40,E11:F13,2,FALSE),"No Record")
Best Answer
It's not 100% clear to me what you are asking. But your best approach may be to simply right-click the original sheet name at the bottom (in the tab) and choose "Duplicate." This will create a new sheet with all of the same formulas in it.
You can also select the range of formula cells from Sheet1, hit Ctrl-C to copy to clipboard, then click in the upper left cell of the same range in Sheet2 and hit Ctrl-V to paste. The formulas will be pasted exactly as they were in the Sheet1.