Nov 13 2021 12:08 PM
I am struggling with ignore zero values when the group of cells to be tested is not a consecutive range
The function "=MIN(D7,M7,V7,AE7,AN7)" works fine but I want to ignore lowest value if AE7 and AN7 are zero.
All the examples for MINIFS require the group of cells to be tested to be a consecutive Range (D7:AN7) however, I have values in the 7th row that I do not want factored in.
Thanks in advance and I apologize for my nube-ness...
Nov 13 2021 12:27 PM
=MIN(IF((MOD(COLUMN(D7:AN7),9)=4)*(D7:AN7<>0),D7:AN7,1E+300))
If you don't have Microsoft 365 or Office 2021, confirm the formula with Ctrl+Shift+Enter.
Nov 13 2021 01:01 PM - edited Nov 13 2021 01:03 PM
Something like this?
=MIN(D7,M7,V7,LET(a,FILTER(AE7:AN7,{1,0,0,0,0,0,0,0,0,1}),FILTER(a,a>0,"")))
Nov 13 2021 01:59 PM
Another 365 solution
= LET(
k, SEQUENCE(1,5,1,9),
array, INDEX(dataRow, k),
nonzero, IF(NOT((array=0)*(k>=28)), array),
MIN(nonzero) )
This builds an array from every 9th cell in the row. Any zeros found in the back end of the array are converted to FALSE. MIN returns the required result.
If you do not have 365, it might be the time to say.
Nov 13 2021 04:18 PM
=IF(AND(AE7=0,AN7=0),MIN(D7,M7,V7),IF(AND(AE7=0,AN7<>0),MIN(D7,M7,V7,AN7),IF(AND(AE7<>0,AN7=0),MIN(D7,M7,V7,AE7),MIN(D7,M7,V7,AE7,AN7))))
With Office365 or 2021 you can apply IFS formula:
=IFS(AND(AE7=0,AN7=0),MIN(D7,M7,V7),
AND(AE7=0,AN7<>0),MIN(D7,M7,V7,AN7),
AND(AE7<>0,AN7=0),MIN(D7,M7,V7,AE7),
AND(AE7<>0,AN7<>0),MIN(D7,M7,V7,AE7,AN7))
Nov 14 2021 11:20 AM
Jul 10 2024 10:59 PM
Jul 10 2024 11:31 PM
Jul 11 2024 12:14 AM
Jul 11 2024 12:17 AM
Sorry for not translating it before. You shouldn't use MIN but PETITE.VALEUR.
=PETITE.VALEUR(CHOISIR({1;2;3;4};AQ6;BN6;CK6;DH6);2)
Jul 11 2024 12:24 AM
Jul 11 2024 12:25 AM
Jul 11 2024 12:29 AM
If no zero formula returns second smallest.
If two or more zeroes formula returns zero.
Jul 11 2024 12:31 AM
Jul 11 2024 12:37 AM
Jul 11 2024 01:42 AM
One more variant
=MIN( CHOOSE( ROW(A1:A4), IF(A1,A1), IF(C25,C25), IF(E4,E4), IF(G5,G5)))
Jul 11 2024 01:53 AM
Interesting!
Just replacing MIN by SMALL to meet Tom's requirement of retrieveing the second smallest number and beautiful alternative.
Jul 11 2024 02:10 AM - edited Jul 11 2024 02:11 AM
And just to add to the pot, an interesting small challenge:
Imagine range from large negative to large positive. We aim to retrieve the second smallest positive number from a discontinued range of cells. Hundreds of cells to take into account. The second smallest number retrieved (k) should not be equal to k -1, nor k +1. That is, a unique second smallest positive (non-zero) number.
See initial structure:
=SMALL(LET(continued,HSTACK(A1,C1,E1,G1,I1),FILTER(continued,continued>0)),2)
In the example, 8 should be the value retrieved and not 1.
Also, how to set the HSTACK or similar in an efficient way (hundreds of cells, cannot be entered mannually - one space between each one always).
Jul 11 2024 02:34 AM
With IF() we return FALSE if the value is zero, and logical value is ignored by MIN()
Jul 11 2024 02:37 AM
Not to enter hundred of references it shall be some logic defined, i.e. take every third cell or like. If no such logic when only manually.