Combining IF statements

thewiseguy

Well-known Member
Joined
May 23, 2005
Messages
1,015
Office Version
  1. 365
Platform
  1. Windows
Hi all,

I am trying to combine these 3 IF statements but having some trouble: Any help on how to do this would be GREATLY appreciated!

=IF(O4="Direct",(XLOOKUP(B4,Tbl_Proposed_Fixtures[MaskedPartNumber],Tbl_Proposed_Fixtures[Cost_Direct],XLOOKUP(B4,Tbl_Proposed_Lamps[MaskedPartNumber],Tbl_Proposed_Lamps[Cost_Direct],XLOOKUP(B4,Tbl_Proposed_Retrofit_Kits[MaskedPartNumber],Tbl_Proposed_Retrofit_Kits[Cost_Direct],XLOOKUP(B4,Tbl_Accessory[MaskedPartNumber],Tbl_Accessory[Cost_Direct],XLOOKUP(B4,Tbl_Controls[MaskedPartNumber],Tbl_Controls[Cost_Direct],XLOOKUP(B4,Tbl_Materials[MaskedPartNumber],Tbl_Materials[Cost_Direct],XLOOKUP(B4,Tbl_Recycling[MaskedPartNumber],Tbl_Recycling[Cost_Direct],XLOOKUP(B4,Tbl_Rental[MaskedPartNumber],Tbl_Rental[Cost_Direct],XLOOKUP(B4,Tbl_Labor[MaskedPartNumber],Tbl_Labor[Cost_Direct]))))))))))

IF(O4="Distribution",(XLOOKUP(B4,Tbl_Proposed_Fixtures[MaskedPartNumber],Tbl_Proposed_Fixtures[Cost_Dist],XLOOKUP(B4,Tbl_Proposed_Lamps[MaskedPartNumber],Tbl_Proposed_Lamps[Cost_Dist],XLOOKUP(B4,Tbl_Proposed_Retrofit_Kits[MaskedPartNumber],Tbl_Proposed_Retrofit_Kits[Cost_Dist],XLOOKUP(B4,Tbl_Accessory[MaskedPartNumber],Tbl_Accessory[Cost_Dist],XLOOKUP(B4,Tbl_Controls[MaskedPartNumber],Tbl_Controls[Cost_Dist],XLOOKUP(B4,Tbl_Materials[MaskedPartNumber],Tbl_Materials[Cost_Dist],XLOOKUP(B4,Tbl_Recycling[MaskedPartNumber],Tbl_Recycling[Cost_Dist],XLOOKUP(B4,Tbl_Rental[MaskedPartNumber],Tbl_Rental[Cost_Dist],XLOOKUP(B4,Tbl_Labor[MaskedPartNumber],Tbl_Labor[Cost_Dist]))))))))))))


IF(O4="Override",P4,0)
 

Excel Facts

Why are there 1,048,576 rows in Excel?
The Excel team increased the size of the grid in 2007. There are 2^20 rows and 2^14 columns for a total of 17 billion cells.
Hi,

maybe the SWITCH() function could be easier for you :


So it would look something like :

Excel Formula:
SWITCH(O4,"Direct",[enter1st xlookup here],"Distribution",[2nd xlookup formula here], "Override",[3rd xlookup here],0)[/CODE



cheers
Rob
 
Upvote 0
Hi,

maybe the SWITCH() function could be easier for you :


So it would look something like :

Excel Formula:
SWITCH(O4,"Direct",[enter1st xlookup here],"Distribution",[2nd xlookup formula here], "Override",[3rd xlookup here],0)[/CODE



cheers
Rob

I can get this to work with the first 2 functions but the last one is giving me a problem. The 3rd statement is not an XLOOKUP - it just needs to reference a single cell (P4).
 
Upvote 0
yep sorry, my bad - then just put P4 in place of the 3rd function.

(of course omit my [] square brackets on all .. just put functions between the , , commas..)

Excel Formula:
SWITCH(O4,"Direct",[enter1st xlookup here],"Distribution",[2nd xlookup formula here], "Override",P4,0)

Rob
 
Upvote 0
yep sorry, my bad - then just put P4 in place of the 3rd function.

(of course omit my [] square brackets on all .. just put functions between the , , commas..)

Excel Formula:
SWITCH(O4,"Direct",[enter1st xlookup here],"Distribution",[2nd xlookup formula here], "Override",P4,0)

Rob

can't seem to get this to work?


=SWITCH(O4,"DIRECT",(XLOOKUP(B4,Tbl_Proposed_Fixtures[MaskedPartNumber],Tbl_Proposed_Fixtures[Cost_Direct],XLOOKUP(B4,Tbl_Proposed_Lamps[MaskedPartNumber],Tbl_Proposed_Lamps[Cost_Direct],XLOOKUP(B4,Tbl_Proposed_Retrofit_Kits[MaskedPartNumber],Tbl_Proposed_Retrofit_Kits[Cost_Direct],XLOOKUP(B4,Tbl_Accessory[MaskedPartNumber],Tbl_Accessory[Cost_Direct],XLOOKUP(B4,Tbl_Controls[MaskedPartNumber],Tbl_Controls[Cost_Direct],XLOOKUP(B4,Tbl_Materials[MaskedPartNumber],Tbl_Materials[Cost_Direct],XLOOKUP(B4,Tbl_Recycling[MaskedPartNumber],Tbl_Recycling[Cost_Direct],XLOOKUP(B4,Tbl_Rental[MaskedPartNumber],Tbl_Rental[Cost_Direct],XLOOKUP(B4,Tbl_Labor[MaskedPartNumber],Tbl_Labor[Cost_Direct])))))))))),"DISTRIBUTION",(XLOOKUP(B4,Tbl_Proposed_Fixtures[MaskedPartNumber],Tbl_Proposed_Fixtures[Cost_Dist],XLOOKUP(B4,Tbl_Proposed_Lamps[MaskedPartNumber],Tbl_Proposed_Lamps[Cost_Dist],XLOOKUP(B4,Tbl_Proposed_Retrofit_Kits[MaskedPartNumber],Tbl_Proposed_Retrofit_Kits[Cost_Dist],XLOOKUP(B4,Tbl_Accessory[MaskedPartNumber],Tbl_Accessory[Cost_Dist],XLOOKUP(B4,Tbl_Controls[MaskedPartNumber],Tbl_Controls[Cost_Dist],XLOOKUP(B4,Tbl_Materials[MaskedPartNumber],Tbl_Materials[Cost_Dist],XLOOKUP(B4,Tbl_Recycling[MaskedPartNumber],Tbl_Recycling[Cost_Dist],XLOOKUP(B4,Tbl_Rental[MaskedPartNumber],Tbl_Rental[Cost_Dist],XLOOKUP(B4,Tbl_Labor[MaskedPartNumber],Tbl_Labor[Cost_Dist]))))))))))),"OVERRIDE",P4,0)
 
Upvote 0
what kind of output does it give you ? (I note you have moved from "Direct" to "DIRECT" (uppercase) in your implementation - so I assume your O4 is all uppercase ?

Rob
 
Upvote 0
what kind of output does it give you ? (I note you have moved from "Direct" to "DIRECT" (uppercase) in your implementation - so I assume your O4 is all uppercase ?

Rob

#N/A Value Not Available
 
Upvote 0
How about
Excel Formula:
=IF(O4="DIRECT",XLOOKUP(B4,Tbl_Proposed_Fixtures[MaskedPartNumber],Tbl_Proposed_Fixtures[Cost_Direct],XLOOKUP(B4,Tbl_Proposed_Lamps[MaskedPartNumber],Tbl_Proposed_Lamps[Cost_Direct],XLOOKUP(B4,Tbl_Proposed_Retrofit_Kits[MaskedPartNumber],Tbl_Proposed_Retrofit_Kits[Cost_Direct],XLOOKUP(B4,Tbl_Accessory[MaskedPartNumber],Tbl_Accessory[Cost_Direct],XLOOKUP(B4,Tbl_Controls[MaskedPartNumber],Tbl_Controls[Cost_Direct],XLOOKUP(B4,Tbl_Materials[MaskedPartNumber],Tbl_Materials[Cost_Direct],XLOOKUP(B4,Tbl_Recycling[MaskedPartNumber],Tbl_Recycling[Cost_Direct],XLOOKUP(B4,Tbl_Rental[MaskedPartNumber],Tbl_Rental[Cost_Direct],XLOOKUP(B4,Tbl_Labor[MaskedPartNumber],Tbl_Labor[Cost_Direct]))))))))),IF(o4="DISTRIBUTION",XLOOKUP(B4,Tbl_Proposed_Fixtures[MaskedPartNumber],Tbl_Proposed_Fixtures[Cost_Dist],XLOOKUP(B4,Tbl_Proposed_Lamps[MaskedPartNumber],Tbl_Proposed_Lamps[Cost_Dist],XLOOKUP(B4,Tbl_Proposed_Retrofit_Kits[MaskedPartNumber],Tbl_Proposed_Retrofit_Kits[Cost_Dist],XLOOKUP(B4,Tbl_Accessory[MaskedPartNumber],Tbl_Accessory[Cost_Dist],XLOOKUP(B4,Tbl_Controls[MaskedPartNumber],Tbl_Controls[Cost_Dist],XLOOKUP(B4,Tbl_Materials[MaskedPartNumber],Tbl_Materials[Cost_Dist],XLOOKUP(B4,Tbl_Recycling[MaskedPartNumber],Tbl_Recycling[Cost_Dist],XLOOKUP(B4,Tbl_Rental[MaskedPartNumber],Tbl_Rental[Cost_Dist],XLOOKUP(B4,Tbl_Labor[MaskedPartNumber],Tbl_Labor[Cost_Dist]))))))))),IF(o4="OVERRIDE",P4,"")))
 
Upvote 0
@Fluff, the override last option needs to be 0 rather than "" .. but you can fix that :)

I think at the end of the SWITCH statement the 0 might need to be "0" instead (eg inside inverted commas)
Rob
 
Upvote 0

Forum statistics

Threads
1,223,889
Messages
6,175,223
Members
452,620
Latest member
dsubash

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top