Xlambda
Well-known Member
- Joined
- Mar 8, 2021
- Messages
- 837
- Office Version
- 365
- Platform
- Windows
AOVERLAP Array Overlap, overlapping 2 arrays using a row/column coordinate system. !! NEW !! MAKEARRAY
Excel Formula:
=LAMBDA(ar,br,[r],[c],
LET(a,IF(ar="","",ar),b,IF(br="","",br),x,ROWS(a),y,ROWS(b),z,COLUMNS(a),w,COLUMNS(b),
s,MAX(({1;1;0;0}=--(r<=0))*({1;0;1;0}=--(c<=0))*SEQUENCE(4)),
k,MAKEARRAY(IF(s<=2,MAX(y,x-r),MAX(y+r,x)),IF(OR(s=2,s=4),MAX(w+c,z),MAX(z-c,w)),LAMBDA(m,n,SWITCH(s,
1,IFS(AND(n<=w,m<=y),INDEX(b,m,n),AND(n>-c,m>-r),INDEX(a,m+r,n+c)),
2,IFS(AND(n>c,n<=(c+w),m<=y),INDEX(b,m,n-c),m>-r,INDEX(a,m+r,n)),
3,IFS(AND(m>r,m<=(r+y),n<=w),INDEX(b,m-r,n),n>-c,INDEX(a,m,n+c)),
4,IFS(AND(m>r,m<=(r+y),n>c,n<=(c+w)),INDEX(b,m-r,n-c),TRUE,INDEX(a,m,n))))),
IFERROR(k,"")
)
)
LAMBDA 1.1.1.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 | AE | AF | AG | AH | AI | AJ | AK | AL | AM | AN | AO | AP | AQ | AR | AS | AT | AU | AV | AW | AX | AY | AZ | |||
1 | ar | r>=0,c>=0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||
2 | 1 | 2 | 3 | 4 | 5 | 6 | c,3 | ➡ | c,6 | ➡ | ||||||||||||||||||||||||||||||||||||||||||||
3 | 2 | 3 | 4 | 5 | 6 | 7 | r,,c,, | ➡ | c,1 | ➡ | c,2 | ➡ | 1 | 2 | 3 | 4 | 5 | 6 | 1 | 2 | 3 | 4 | 5 | 6 | ||||||||||||||||||||||||||||||
4 | 3 | 4 | 5 | 6 | 7 | 8 | ⬇ | A | B | C | D | 5 | 6 | 1 | 2 | 3 | 4 | 5 | 6 | 1 | 2 | 3 | 4 | 5 | 6 | 2 | 3 | 4 | 5 | 6 | 7 | 2 | 3 | 4 | 5 | 6 | 7 | |||||||||||||||||
5 | 4 | 5 | 6 | 7 | 9 | E | F | H | 6 | 7 | 2 | 3 | 4 | 5 | 6 | 7 | r,2 | 2 | 3 | 4 | 5 | 6 | 7 | r,3 | 3 | 4 | 5 | 6 | 7 | 8 | 3 | 4 | 5 | 6 | 7 | 8 | ||||||||||||||||||
6 | 5 | 6 | 7 | 8 | 9 | 10 | I | J | K | L | 7 | 8 | r,3 | 3 | 4 | 5 | 6 | 7 | 8 | ⬇ | 3 | 4 | A | B | C | D | ⬇ | 4 | 5 | 6 | A | B | C | D | 4 | 5 | 6 | 7 | 9 | |||||||||||||||
7 | br | 4 | 5 | 6 | 7 | 9 | ⬇ | 4 | A | B | C | D | 9 | 4 | 5 | E | F | H | 5 | 6 | 7 | E | F | H | r,5 | 5 | 6 | 7 | 8 | 9 | 10 | |||||||||||||||||||||||
8 | A | B | C | D | 5 | 6 | 7 | 8 | 9 | 10 | 5 | E | F | H | 10 | 5 | 6 | I | J | K | L | I | J | K | L | ⬇ | A | B | C | D | ||||||||||||||||||||||||
9 | E | F | H | =AOVERLAP(A2:F6,A8:D10) | I | J | K | L | =AOVERLAP(A2:F6,A8:D10,2,2) | =AOVERLAP(A2:F6,A8:D10,3,3) | E | F | H | |||||||||||||||||||||||||||||||||||||||||
10 | I | J | K | L | =AOVERLAP(A2:F6,A8:D10,3,1) | I | J | K | L | |||||||||||||||||||||||||||||||||||||||||||||
11 | =AOVERLAP(A2:F6,A8:D10,5,6) | |||||||||||||||||||||||||||||||||||||||||||||||||||||
12 | r>=0,c<0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||
13 | ⬅ | c,-1 | ⬅ | c,-2 | ⬅ | c,-4 | ||||||||||||||||||||||||||||||||||||||||||||||||
14 | r, | ⬅ | c,-2 | ⬅ | c,-1 | 1 | 2 | 3 | 4 | 5 | 6 | 1 | 2 | 3 | 4 | 5 | 6 | 1 | 2 | 3 | 4 | 5 | 6 | |||||||||||||||||||||||||||||||
15 | ⬇ | A | B | C | D | 3 | 4 | 5 | 6 | r,1 | 1 | 2 | 3 | 4 | 5 | 6 | r,2 | 2 | 3 | 4 | 5 | 6 | 7 | 2 | 3 | 4 | 5 | 6 | 7 | 2 | 3 | 4 | 5 | 6 | 7 | |||||||||||||||||||
16 | E | F | H | 4 | 5 | 6 | 7 | ⬇ | A | B | C | D | 5 | 6 | 7 | ⬇ | A | B | C | D | 6 | 7 | 8 | r,3 | 3 | 4 | 5 | 6 | 7 | 8 | 3 | 4 | 5 | 6 | 7 | 8 | ||||||||||||||||||
17 | I | J | K | L | 5 | 6 | 7 | 8 | E | F | H | 6 | 7 | 8 | E | F | H | 7 | 9 | ⬇ | A | B | C | D | 6 | 7 | 9 | 4 | 5 | 6 | 7 | 9 | ||||||||||||||||||||||
18 | 4 | 5 | 6 | 7 | 9 | I | J | K | L | 7 | 9 | I | J | K | L | 8 | 9 | 10 | E | F | H | 7 | 8 | 9 | 10 | r,5 | 5 | 6 | 7 | 8 | 9 | 10 | ||||||||||||||||||||||
19 | 5 | 6 | 7 | 8 | 9 | 10 | 5 | 6 | 7 | 8 | 9 | 10 | =AOVERLAP(A2:F6,A8:D10,2,-1) | I | J | K | L | ⬇ | A | B | C | D | ||||||||||||||||||||||||||||||||
20 | =AOVERLAP(A2:F6,A8:D10,,-2) | =AOVERLAP(A2:F6,A8:D10,1,-1) | =AOVERLAP(A2:F6,A8:D10,3,-2) | E | F | H | ||||||||||||||||||||||||||||||||||||||||||||||||
21 | I | J | K | L | ||||||||||||||||||||||||||||||||||||||||||||||||||
22 | =AOVERLAP(A2:F6,A8:D10,5,-4) | |||||||||||||||||||||||||||||||||||||||||||||||||||||
23 | r<0,c<=0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||
24 | ⬅ | c,-4 | ⬅ | c,-5 | ||||||||||||||||||||||||||||||||||||||||||||||||||
25 | ⬅ | c,, | ⬅ | c,-1 | A | B | C | D | A | B | C | D | ||||||||||||||||||||||||||||||||||||||||||
26 | ⬆ | A | B | C | D | ⬆ | A | B | C | D | E | F | H | E | F | H | ||||||||||||||||||||||||||||||||||||||
27 | r,-1 | E | F | H | 5 | 6 | r,-1 | E | F | H | 4 | 5 | 6 | ⬆ | I | J | K | L | I | J | K | L | ||||||||||||||||||||||||||||||||
28 | I | J | K | L | 6 | 7 | I | J | K | L | 5 | 6 | 7 | r,-3 | 1 | 2 | 3 | 4 | 5 | 6 | ⬆ | |||||||||||||||||||||||||||||||||
29 | 3 | 4 | 5 | 6 | 7 | 8 | 3 | 4 | 5 | 6 | 7 | 8 | 2 | 3 | 4 | 5 | 6 | 7 | r,-4 | 1 | 2 | 3 | 4 | 5 | 6 | |||||||||||||||||||||||||||||
30 | 4 | 5 | 6 | 7 | 9 | 4 | 5 | 6 | 7 | 9 | 3 | 4 | 5 | 6 | 7 | 8 | 2 | 3 | 4 | 5 | 6 | 7 | ||||||||||||||||||||||||||||||||
31 | 5 | 6 | 7 | 8 | 9 | 10 | 5 | 6 | 7 | 8 | 9 | 10 | 4 | 5 | 6 | 7 | 9 | 3 | 4 | 5 | 6 | 7 | 8 | |||||||||||||||||||||||||||||||
32 | =AOVERLAP(A2:F6,A8:D10,-1) | =AOVERLAP(A2:F6,A8:D10,-1,-1) | 5 | 6 | 7 | 8 | 9 | 10 | 4 | 5 | 6 | 7 | 9 | |||||||||||||||||||||||||||||||||||||||||
33 | =AOVERLAP(A2:F6,A8:D10,-3,-4) | 5 | 6 | 7 | 8 | 9 | 10 | |||||||||||||||||||||||||||||||||||||||||||||||
34 | =AOVERLAP(A2:F6,A8:D10,-4,-5) | |||||||||||||||||||||||||||||||||||||||||||||||||||||
35 | r<=0,c>0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||
36 | c,1 | ➡ | c,2 | ➡ | c,3 | ➡ | c,6 | ➡ | ||||||||||||||||||||||||||||||||||||||||||||||
37 | ⬆ | c,1 | ➡ | ⬆ | A | B | C | D | ⬆ | A | B | C | D | A | B | C | D | A | B | C | D | |||||||||||||||||||||||||||||||||
38 | r,, | 1 | A | B | C | D | 6 | r,-1 | 1 | E | F | H | 6 | r,-1 | 1 | 2 | E | F | H | ⬆ | E | F | H | E | F | H | ||||||||||||||||||||||||||||
39 | 2 | E | F | H | 7 | 2 | I | J | K | L | 7 | 2 | 3 | I | J | K | L | r,-2 | 1 | 2 | 3 | I | J | K | L | ⬆ | I | J | K | L | ||||||||||||||||||||||||
40 | 3 | I | J | K | L | 8 | 3 | 4 | 5 | 6 | 7 | 8 | 3 | 4 | 5 | 6 | 7 | 8 | 2 | 3 | 4 | 5 | 6 | 7 | r,-3 | 1 | 2 | 3 | 4 | 5 | 6 | |||||||||||||||||||||||
41 | 4 | 5 | 6 | 7 | 9 | 4 | 5 | 6 | 7 | 9 | 4 | 5 | 6 | 7 | 9 | 3 | 4 | 5 | 6 | 7 | 8 | 2 | 3 | 4 | 5 | 6 | 7 | |||||||||||||||||||||||||||
42 | 5 | 6 | 7 | 8 | 9 | 10 | 5 | 6 | 7 | 8 | 9 | 10 | 5 | 6 | 7 | 8 | 9 | 10 | 4 | 5 | 6 | 7 | 9 | 3 | 4 | 5 | 6 | 7 | 8 | |||||||||||||||||||||||||
43 | =AOVERLAP(A2:F6,A8:D10,,1) | =AOVERLAP(A2:F6,A8:D10,-1,1) | =AOVERLAP(A2:F6,A8:D10,-1,2) | 5 | 6 | 7 | 8 | 9 | 10 | 4 | 5 | 6 | 7 | 9 | ||||||||||||||||||||||||||||||||||||||||
44 | =AOVERLAP(A2:F6,A8:D10,-2,3) | 5 | 6 | 7 | 8 | 9 | 10 | |||||||||||||||||||||||||||||||||||||||||||||||
45 | =AOVERLAP(A2:F6,A8:D10,-3,6) | |||||||||||||||||||||||||||||||||||||||||||||||||||||
AOVERLAP post 1 |
Cell Formulas | ||
---|---|---|
Range | Formula | |
AG3:AM8 | AG3 | =AOVERLAP(A2:F6,A8:D10,3,3) |
AP3:AY10 | AP3 | =AOVERLAP(A2:F6,A8:D10,5,6) |
I4:N8 | I4 | =AOVERLAP(A2:F6,A8:D10) |
Q4:V9 | Q4 | =AOVERLAP(A2:F6,A8:D10,3,1) |
Y4:AD8 | Y4 | =AOVERLAP(A2:F6,A8:D10,2,2) |
I9,C43,M20,C20,V19,Y9 | I9 | =FORMULATEXT(I4) |
AG9,S43,K43,K32,C32,AF20,Q10 | AG9 | =FORMULATEXT(AG3) |
AP11,AJ45,T33,AP22 | AP11 | =FORMULATEXT(AP3) |
V14:AB18 | V14 | =AOVERLAP(A2:F6,A8:D10,2,-1) |
AF14:AM19 | AF14 | =AOVERLAP(A2:F6,A8:D10,3,-2) |
AP14:AY21 | AP14 | =AOVERLAP(A2:F6,A8:D10,5,-4) |
C15:J19 | C15 | =AOVERLAP(A2:F6,A8:D10,,-2) |
M15:S19 | M15 | =AOVERLAP(A2:F6,A8:D10,1,-1) |
T25:AC32 | T25 | =AOVERLAP(A2:F6,A8:D10,-3,-4) |
AF25:AP33 | AF25 | =AOVERLAP(A2:F6,A8:D10,-4,-5) |
C26:H31 | C26 | =AOVERLAP(A2:F6,A8:D10,-1) |
K26:Q31 | K26 | =AOVERLAP(A2:F6,A8:D10,-1,-1) |
AF34 | AF34 | =FORMULATEXT(AF25) |
K37:P42 | K37 | =AOVERLAP(A2:F6,A8:D10,-1,1) |
S37:X42 | S37 | =AOVERLAP(A2:F6,A8:D10,-1,2) |
AA37:AG43 | AA37 | =AOVERLAP(A2:F6,A8:D10,-2,3) |
AJ37:AS44 | AJ37 | =AOVERLAP(A2:F6,A8:D10,-3,6) |
C38:H42 | C38 | =AOVERLAP(A2:F6,A8:D10,,1) |
AA44 | AA44 | =FORMULATEXT(AA37) |
Dynamic array formulas. |
Upvote
0