Xlambda
Well-known Member
- Joined
- Mar 8, 2021
- Messages
- 837
- Office Version
- 365
- Platform
- Windows
AHCLEAN Array Horizontal Clean, replaces errors with null strings and filters all the rows depending on nr. of blnks/null strings on each row. !!NEW!! BYROW
n=0 or omitted, filters only "full" rows sum(blnks)=0
n>0 filters the rows that have sum(blnks)<=n
n<0 filters only rows that have sum(blnks)>=abs( n)
Excel Formula:
=LAMBDA(ar,[n],
LET(a,IF(ISERROR(ar),"",IF(ar="","",ar)),
x,BYROW(a,LAMBDA(a,SUM(--(a="")))),
m,MIN(ABS(n),MAX(x)),
FILTER(a,IF(n>=0,x<=m,x>=m))
)
)
n>0 filters the rows that have sum(blnks)<=n
n<0 filters only rows that have sum(blnks)>=abs( n)
LAMBDA 1.1.2.xlsx | ||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | AA | AB | AC | AD | |||
1 | sample | n>0 | filters the rows that have sum(blnks)<=n | |||||||||||||||||||||||||||||
2 | 1 | A | 1 | 2 | 3 | 4 | 5 | 6 | 7 | n=0 | or omited, filters only "full" rows sum(blnks)=0 | |||||||||||||||||||||
3 | 2 | B | 1 | 2 | 3 | 4 | 5 | 6 | n<0 | filters only rows that have sum(blnks)>=abs(n) | ||||||||||||||||||||||
4 | 3 | C | 1 | #N/A | 3 | 4 | 5 | |||||||||||||||||||||||||
5 | 4 | D | 1 | 2 | 3 | 4 | n,4 | n,-1 | ||||||||||||||||||||||||
6 | 5 | E | 1 | 2 | 3 | =AHCLEAN($A$2:$I$9,4) | =AHCLEAN($A$2:$I$9,-1) | |||||||||||||||||||||||||
7 | 6 | F | 1 | 2 | 1 | A | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 2 | B | 1 | 2 | 3 | 4 | 5 | 6 | |||||||||||
8 | 7 | G | 1 | 2 | B | 1 | 2 | 3 | 4 | 5 | 6 | 3 | C | 1 | 3 | 4 | 5 | |||||||||||||||
9 | 8 | H | 3 | C | 1 | 3 | 4 | 5 | 4 | D | 1 | 2 | 3 | 4 | ||||||||||||||||||
10 | 4 | D | 1 | 2 | 3 | 4 | 5 | E | 1 | 2 | 3 | |||||||||||||||||||||
11 | n, 0 or omitted | 5 | E | 1 | 2 | 3 | 6 | F | 1 | 2 | ||||||||||||||||||||||
12 | =AHCLEAN($A$2:$I$9) | 7 | G | 1 | ||||||||||||||||||||||||||||
13 | 1 | A | 1 | 2 | 3 | 4 | 5 | 6 | 7 | n,5 | 8 | H | ||||||||||||||||||||
14 | =AHCLEAN($A$2:$I$9,5) | |||||||||||||||||||||||||||||||
15 | n,1 | 1 | A | 1 | 2 | 3 | 4 | 5 | 6 | 7 | n,-2 | |||||||||||||||||||||
16 | =AHCLEAN($A$2:$I$9,1) | 2 | B | 1 | 2 | 3 | 4 | 5 | 6 | =AHCLEAN($A$2:$I$9,-2) | ||||||||||||||||||||||
17 | 1 | A | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 3 | C | 1 | 3 | 4 | 5 | 3 | C | 1 | 3 | 4 | 5 | |||||||||||
18 | 2 | B | 1 | 2 | 3 | 4 | 5 | 6 | 4 | D | 1 | 2 | 3 | 4 | 4 | D | 1 | 2 | 3 | 4 | ||||||||||||
19 | 5 | E | 1 | 2 | 3 | 5 | E | 1 | 2 | 3 | ||||||||||||||||||||||
20 | n,2 | 6 | F | 1 | 2 | 6 | F | 1 | 2 | |||||||||||||||||||||||
21 | =AHCLEAN($A$2:$I$9,2) | 7 | G | 1 | ||||||||||||||||||||||||||||
22 | 1 | A | 1 | 2 | 3 | 4 | 5 | 6 | 7 | if n>clms(a) => whole array n,15 | 8 | H | ||||||||||||||||||||
23 | 2 | B | 1 | 2 | 3 | 4 | 5 | 6 | =AHCLEAN(A2:I9,9) | |||||||||||||||||||||||
24 | 1 | A | 1 | 2 | 3 | 4 | 5 | 6 | 7 | n,-5 | ||||||||||||||||||||||
25 | 2 | B | 1 | 2 | 3 | 4 | 5 | 6 | =AHCLEAN($A$2:$I$9,-5) | |||||||||||||||||||||||
26 | n,3 | 3 | C | 1 | 3 | 4 | 5 | 6 | F | 1 | 2 | |||||||||||||||||||||
27 | =AHCLEAN($A$2:$I$9,3) | 4 | D | 1 | 2 | 3 | 4 | 7 | G | 1 | ||||||||||||||||||||||
28 | 1 | A | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 5 | E | 1 | 2 | 3 | 8 | H | ||||||||||||||||
29 | 2 | B | 1 | 2 | 3 | 4 | 5 | 6 | 6 | F | 1 | 2 | ||||||||||||||||||||
30 | 3 | C | 1 | 3 | 4 | 5 | 7 | G | 1 | abs(n)>=clms(a) | ||||||||||||||||||||||
31 | 4 | D | 1 | 2 | 3 | 4 | 8 | H | =AHCLEAN($A$2:$I$9,-COLUMNS(A2:I9)) | |||||||||||||||||||||||
32 | 8 | H | ||||||||||||||||||||||||||||||
33 | ||||||||||||||||||||||||||||||||
AHCLEAN post 1 |
Cell Formulas | ||
---|---|---|
Range | Formula | |
D4 | D4 | =NA() |
K6,U31,A27,U25,K23,A21,U16,A16,K14,A12,U6 | K6 | =FORMULATEXT(K7) |
K7:S11 | K7 | =AHCLEAN($A$2:$I$9,4) |
U7:AC13 | U7 | =AHCLEAN($A$2:$I$9,-1) |
A13:I13 | A13 | =AHCLEAN($A$2:$I$9) |
K15:S20 | K15 | =AHCLEAN($A$2:$I$9,5) |
A17:I18 | A17 | =AHCLEAN($A$2:$I$9,1) |
U17:AC22 | U17 | =AHCLEAN($A$2:$I$9,-2) |
A22:I23 | A22 | =AHCLEAN($A$2:$I$9,2) |
K24:S31 | K24 | =AHCLEAN(A2:I9,9) |
U26:AC28 | U26 | =AHCLEAN($A$2:$I$9,-5) |
A28:I31 | A28 | =AHCLEAN($A$2:$I$9,3) |
U32:AC32 | U32 | =AHCLEAN($A$2:$I$9,-COLUMNS(A2:I9)) |
Dynamic array formulas. |
Upvote
0