IF AND works incorrectly - excel

I am building IF(AND formula in Excel with 3 conditions. The formula is looking as follows: IF(AND(I2="#N/A N/A",J2<>"#N/A Field Not Applicable",K2<>"#N/A N/A"),"A",IF(AND(J2="#N/A Field Not Applicable",K2="#N/A N/A"),"B","Ok")).
Problem: for some reason, I don't get anything returned for first condition: IF(AND(I2="#N/A N/A",J2<>"#N/A Field Not Applicable",K2<>"#N/A N/A"),"A". The remaining part of the formula works fine and delivers correct output.
I'd appreciate any advice on how to make this formula work correctly, so it returns "A" in some cases.

The If formula does not work to see if there was a mistake in a cell. The Excel tries to get a value from your cell, gets a mistake, and then you receive the error. Are you trying to concatenate differents "#N/A" in the formulas, for example for comparing "I2 = #N/A N/A"? This alone can result in the same problem I mentioned, when you try to concatenate a cell with a mistake.
As someone suggested, use the formula ISNA(I2) instead, which sees if the cell has a #N/A mistake and returns True or False. You can even do this in the concatenate, for example:
=CONCAT(IF(ISNA(A2),"No Match", "Has a Match"), IF(ISNA(B2),"No Match", "Has a Match") )
That way, you can later compare I2, J2 and so on with other texts, not "#N/A", which isn't technically a text, and avoid this problem.

Related

Excel formula for "skipping to write" in cell if conditions are not correct

So I got stuck with a problem where I could use some feedback.
I am looking at cell B1 and C1 if either contains a specific value.
If it does I want to write value from D1 (true or false) to A1.
This is the formula I started with and it's used in A1 (I had to simplify with fruits both due to data protection and simplification):
=IF(OR(B1="Apples";C1="Apples");"D1";"")
The problem now is that I want to "skip" a write if it doesn't contain any of the values but it won't work since the IF statement is left empty.
As you can see in the attached picture, I leave an empty space between each "True".
I did find a lot of solutions on how to "skip" empty cells, but that's not what I am after here. Is this even possible with Excel-formulas or do I need to dig into VBA?
Result of my formula:
Expecation:
Does it make sense?
My manager actually solved this for me if anyone is interested. The use case is a bit weird I can agree on that, but here is solution:
Formula required to "scatter the TRUE's
Formula to get the first TRUE
Formula for the upcoming TRUE's

Excel: Find particular (text) value in range

I'm struggling with something I think should be easy, it seems to be a common problem, I've found another solution here on the website but it won't work here in my document.
I want to find the (exact) value into a range, and having a true or false result if this value was found.
I tried with the combination of the find, isnumber and sumproduct formula but the value is never found, if I use a nested if formula it's working.
I have a dutch version of Excel, that's why you see "onwaar / waar" but onwaar is "false" and waar is "true".
Also my formula is written in dutch, but I translated it through the Excel-Translator.de website, I'm not 100% sure if it's done correctly.
In cell F2 I have this formula:
=SUMPRODUCT(SUMIF(E2, $A$2:$A$11))>0
In cell G2 I have this formula:
=IF(E2=$A$2,TRUE,
IF(E2=$A$3,TRUE,
IF(E2=$A$4,TRUE,
IF(E2=$A$5,TRUE,
IF(E2=$A$6,TRUE,
IF(E2=$A$7,TRUE,
IF(E2=$A$8,TRUE,
IF(E2=$A$9,TRUE,
IF(E2=$A$10,TRUE,
IF(E2=$A$11,TRUE,FALSE))))))))))
Thanks for your help.
First use function =COUNTIF($E$2:$E$11,A2) to know if the search value column contains your value.
Then, use function =IF(F2>=1,"True","False") determine true or false.
Combined, yout get =IF((COUNTIF($E$2:$E$11,A2)),"True","False")
screenshot of working example

condition formatting based on formula's result

I have a cell (AP21) containing a formula, and I want that the AP22 become black if the AP21 return empty string.
I am using conditionnal formatting but I not able to do that, because when I am using a formula to check the value of AP21, it's always considered as not empty because it contains a formula and not a text.
What I need is to evaluate in my AP22 the result of the formula of the cell AP21 and not the formula itself.
Any clue about how to do that please ?
Here is what I have to help you to understand me more
I tried also what is suggested in comments still didn't work
As #BigBen said in comments, you want to compare to an empty string
=$AP21=""

Combining IFERROR and LEFT Formulas

I have a formula that looks like this
=IFERROR(B83,"OPEN")
So if a certain cell has an error it changes it to OPEN, but if it doesn't then it returns the values within that cell.
I am trying to make the cell also short the text that is being returned to 7 characters.
I made this formula:
IFERROR(B83,"OPEN"),AND(LEFT(B83,7))
However it does not work and instead returns an "NA".
Appreciate any help.
Try
IFERROR(LEFT(B83,7),"OPEN")
You need to put your desired result as the first argument of IFERROR.

Excel Nesting IF in SumIfs

Ok. So i'm looking to nest IF in my SUMIFS formulas. The only problem i'm having is when one of my referenced cells show FALSE, the formula no longer works. How do i get the formula to completely remove that Criteria from the SUMIFS formula and still work?
Codes i've used.
=SUMIFS(R:R,IF(BE4=TRUE,I:I),IF(BE4=TRUE,BD4),J:J,BD5)
=IF(BE4=TRUE,SUMIFS(R:R,I:I,BD4),0)+IF(BE5=TRUE,SUMIFS(R:R,J:J,BD5),0)
I've even tried breaking the SUMIFS formula into multiple cells, and using IF and INDIRECT to create a working code. Just keeps popping up with #REF error.
Here's that code
=INDIRECT(CONCATENATE(BK1,IF(BE2=TRUE,BK2,""),IF(BE3=TRUE,BK3,""),IF(BE4=TRUE,BK4,""),IF(BE5=TRUE,BK5,""),BK6))
Here's the code that didn't work before the IF.
=INDIRECT(CONCATENATE(BK1,BK2,BK3,BK4,BK5,BK6))
Any help would be greatly appreciated.
Thank you
Mock Sheet
https://www.dropbox.com/s/tl64vbsalcqxqdm/CriteriaIFS.xlsx?dl=0
Try this formula:
=SUMIFS(BK1:BK6,BK1:BK6,">=0")
Please try this formula,
=IF(BE4=TRUE,SUMIFS(R:R,I:I,BD4,J:J,BD5),SUMIFS(R:R,J:J,BD5))
Your formula
=SUMIFS(R:R,IF(BE4=TRUE,I:I),IF(BE4=TRUE,BD4),J:J,BD5)
You are saying:
Sum from column R everything if match in J with BD5 and IF BE4 is TRUE THEN in I IF match with BD5. Well, the error is because, if BE4 is true is returning a string not a range. Instead you could use this:
=SUMIFS(R:R,INDIRECT(IF(BE4=TRUE,I:I)),INDIRECT(IF(BE4=TRUE,BD4)),J:J,BD5)
And it will be ok, until BE4 is FALSE. because the INDIRECT function return an #REF!... and will be a mess.
I'm not sure if I get the whole idea, but please tell me if you need an emprovement.
Edit #1
Reading your comments I think this could help:
=IF(BE4=TRUE,SUMIFS(R:R,I:I,BD4),0)+IF(BE4=TRUE,SUMIFS(R:R,J:J,BD5))
Try to post some dummie database (using text table format) to give you a better help... and remember to read this: How to ask because your question is to vague, and it was necesary to many comments and answers to "guess" what you really want.
Try this array formula:
=SUMIFS(N:N,IF($A$2,E:E,T:T),IF($A$2,$C$2,""),IF($A$3,F:F,T:T),IF($A$3,$C$3,""),IF($A$4,H:H,T:T),IF($A$4,$C$4,""),IF($A$5,I:I,T:T),IF($A$5,$C$5,""))
It is an array formula and must be confirmed with Ctrl-Shift-Enter.
This is based on your data sheet provided. You will need to change the references to your sheet. The column T reference should be a column that is empty.
I needed to do the same thing. The formula needed to look at a different column as Criteria_Range2 depending on product. I put an IF statement for both the Criteria_Range2, and for the Criteria2 because each column had slightly different information. Basically, it tells the formula use column C (in another worksheet) as the Criteria_Range2 if the product category is anything other than Ceilings. If it is Ceilings, it uses column A as Criteria_Range2. On my worksheet, Column A is a "helper column" that groups our Ceilings sub-products into Tile and Grid.
Hopefully this isn't too confusing, but it works for me and I didn't easily find anything else out there showing how to use IF statements in the Criteria Ranges in the SUMIFS. (I suggest ignoring the very ugly xlookup defining the sum_range.)
SUMIFS(XLOOKUP($AF$20&"COGS CM MTD",Fact_Sales!$E$6:$CS$6&Fact_Sales!$E$7:$CS$7,Fact_Sales!$E$8:$CS$928),Fact_Sales!$B$8:$B$928,'Report Draft'!$AE27,IF('Report Draft'!$AD27<>"CEILINGS",Fact_Sales!$C$8:$C$928,Fact_Sales!$A$8:$A$928),IF('Report Draft'!$AD27<>"CEILINGS",'Report Draft'!$AD27,'Report Draft'!$AF27))

Resources