Excel: Drop Down Computable Calculations - excel

For my abilities in Excel I believe that has too many facets and I am certain using V/HLookup individually will not achieve the objective.
I have a list of products on Sheet 1, on Sheet 2 I need to make a a simple calculator selecting from the products list.
The products list is one large table with the product part, price, rrp etc which can be filtered by part name.
On Sheet 2 I would like to try the following:
Part Type
Part Name
Price
Wheels
(Column B - Row 2)
row
Exhaust
row
row
Part 3
row
row
Part 4
row
row
I need to make the 'Column B- Row 2' a drop down list of all the parts corresponding to the 'Part Type 'Wheels''.

Assuming you have Excel 365, this can be done using the FILTER and XLOOKUP FUNCTION
Sheet 1 sample Data
Result in Sheet 2
Formula in cell E3
=TRANSPOSE(FILTER(Sheet1!B:B,Sheet1!A:A=Sheet2!A3,""))
Data validation in Cell B3 (dont forget the # symbol in formula)
Formula in Cell C3 for price
=XLOOKUP(A3&B3,Sheet1!A:A&Sheet1!B:B,Sheet1!C:C,"Not Found")

Related

Excel Function for looking at text in a cell

My goal is to enter in column E on sheet 2 whether or not the customer used the discount code "BUNDLE3".
I would like to look at the order number in sheet 2 represented by column A then look at Column A in sheet 1 (where my orders data is) and if they match, then look at column M(discount code column in sheet 1) and if Column M has the text "BUNDLE3" then return Yes, if not return No.
The formula I was using is the one below, where orders_export_1 is sheet 1. It doesn't work because its not looking at the order numbers at all.
=IF(ISNUMBER(SEARCH("BUNDLE3",orders_export_1!M2)), "Yes", "No")
Please refer to image links for more clarity.
sheet 2, where I am trying to use an excel function in order to find out if an order (represented by column A) used the discount code "BUNDLE3"
sheet 1, This is my orders data. Sometimes orders take up multiple rows since they are listing the products customers have purchased.
In Sheet2, E2, put this formula and drag down:
=IF(COUNTIFS(orders_export_1!$A$2:$A$100,A2,orders_export_1!$M$2:$M$100,"BUNDLE3"),"Yes","No")
Adjust the range on orders_export_1 as needed.

SUMPRODUCT on all sheets with sheet multiplier

I have multiple sheets that have the same layout but have different products and quantities on each sheet.
Then I have a different sheet that I'm using to total all the other sheets quantities per product I'm using this formula
=SUMPRODUCT(SUMIF(INDIRECT("'"&D$8:D$10&"'!B3:B6"),B3,INDIRECT("'"&D$8:D$10&"'!A3:A6"))) Which works fine.
How can I sum all the product quantities from the same sheet more than once, For example if I add the number of times I want to multiply the sheet In column E next to each sheet name and I put a qty of 2 in E8 it would then double the quantity for that sheet well still summing all the other sheets.
You can use Named Ranges for this. Give the Cell "E8" a name - "Takeoff1_Multiplier" and in the Sheet Takeoff1, go to cell "A3" and in the formula bar enter
the formula =1*Takeoff1_Multiplier.
Now, when you change the value in "E8", the value in "A3" will be multiplied.
If you don't want to use a formula in the Column A in the Takeoff1 sheet, use the formula in column c as =A3*Takeoff1_Multiplier and drag this formula for all the rows.
Resources:
Named Range: https://support.office.com/en-us/article/define-and-use-names-in-formulas-4d0f13ac-53b7-422e-afd2-abd7ff379c64
=SUMPRODUCT($E8:$10*SUMIF(INDIRECT("'"&D$8:D$10&"'!B3:B6"),B3,INDIRECT("'"&D$8:D$10&"'!A3:A6")))
or
=SUMPRODUCT($E8:$10,SUMIF(INDIRECT("'"&D$8:D$10&"'!B3:B6"),B3,INDIRECT("'"&D$8:D$10&"'!A3:A6")))
Both methods should work. Basically you are weighting the results of each sumif sheet result by the corresponding number n your table before taking the final sum/grand total.

Automatic population of an excel sheet

I am looking to make a form in which you can pull down a menu and have fields populate based on your selection. On my excel workbook I have Sheet 1 which is the menu and Sheet 2 which has the data.
Sheet 1 is laid out as such
Item Code Description Wholesale Price Retail Price
Sheet 2 is:
00001 Beans 0.45 0.67
I have setup a drop down list in A1 (Item Code) to reference the item code range on Sheet 2 but what I want to happen after I select the item code is for the rest of the information to populate. I have come close using VLOOKUP but I just don't seem to be able to nail it down.
Any suggestions?
In Sheet1:
B2 =VLOOKUP(A2,Sheet2!$A$1:$D$10,2,FALSE)
C2 =VLOOKUP(A2,Sheet2!$A$1:$D$10,3,FALSE)
D2 =VLOOKUP(A2,Sheet2!$A$1:$D$10,4,FALSE)
Where:
Sheet2!$A$1:$D$10 is your reference table in Sheet2
In Sheet1 I assume you have a header row (hence A2, B2, C2, D2)
Sheet 1:
Formula:
=VLOOKUP($A2,Sheet2!$A:$D,2,FALSE)
Where
A2 is the range of the Item Code
Sheet2!$A:$D is the 4 columns to look in for data
2, 3 and 4 are the columns (within the above 4) of your desired data.
FALSE requires it to be an exact match
Sheet 2:
Result in sheet 1:
Note: I've formatted the A columns as text to preserve the leading zeros, hence the little green triangles in the cell corners.

Link two cells of a column in different sheets if a value in a cell of other column matches in other sheet

I have a workbook with 7 sheets containing part number of a product in column and its cost in adjacent column. And the 7th sheet contains total number of parts in all the sheets. I want to change cost of some products but then I have to do the same in all sheets. Is there a way by which it automatically finds and changes cost in individual sheets when i change it in the sheet containing total?
Use VLOOKUP on the first 6 sheets to match the price to each part number.
So, in each "cost" column on the first 6 sheets, enter this formula (assuming Cost on Sheet7 is still in column C):
=IFERROR(IF($A1="","",VLOOKUP($A1,Sheet7!$A:$C,3,FALSE)),"")
If you have header row(s) then just replace the two instances of $A1 in the formula with whatever the first row of data is (e.g. $A2), paste the formula into that row in column C on Sheet1, then drag-copy the formula down as far as you want. Repeat for sheets 2-6.

Is it possible to mimic excel rows in a different sheet?

So in 'Sheet 1' I have 2000 rows of information which I add a new column to every day, I want to have only a subset of the rows of 'Sheet 1' in 'Sheet 2' which update themselves as I put new columns into 'Sheet 1'. Is this possible to do using inbuilt excel functions?
If you want to select a set of particular rows and you know their row numbers, put their row numbers (1,5,8,11,12 ...) in a separate 1 column range and name this range e.g. "RowNumbers"
Then use following normal non-array formula which you can drag downwards and rightwards.
= IF(INDEX(RowNumbers,ROW(A1)+1)>0, INDEX(NamedRange,INDEX(RowNumbers,ROW(A1)+1),COLUMN(B1)+1),"")
You will probably need to adjust the +1 parts, depending on whether your values start at row 1 or 2 etc.
Basically the Excel INDEX formula does what you need - copies the value from another sheet or range by given row and column numbers.
Otherwise you can use following array formula (Ctrl+Shift+Enter) to select filtered values from columns based on multiple criteria:
= IFERROR(INDEX(NamedRange,
SMALL(IF((INDEX(NamedRange,,1,1)=1)*(INDEX(NamedRange,,2,1)="A"),
ROW(NamedRange)-MIN(ROW(NamedRange))+1,""),
ROWS(C1:$C$1)),3,1),"")
Here is an example data sheet (Sheet1)
Here is the filtered data output sheet. You should enter the array formula in the first row and drag downwards to fill expected output range. In this example I select only rowns that have values 1 and A ind filter1 and filter2 columns.

Resources