Ooops, that was a few INDEX too many. Try this instead
For the X-coordinate:
=INDEX(A1:A10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1)+
(INDEX(A1:A10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0))-
INDEX(A1:A10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1))*
(INDEX(B1:B10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1)-
INDEX(C1:C10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1))/
(INDEX(B1:B10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1)-
INDEX(C1:C10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1)-
INDEX(B1:B10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0))+
INDEX(C1:C10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)))
For the Y-coordinate:
=INDEX(B1:B10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1)+
(INDEX(B1:B10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0))-
INDEX(B1:B10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1))*
(INDEX(B1:B10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1)-
INDEX(C1:C10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1))/
(INDEX(B1:B10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1)-
INDEX(C1:C10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)-1)-
INDEX(B1:B10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0))+
INDEX(C1:C10,MATCH(-SIGN(B1-C1),SIGN(B1:B10-C1:C10),0)))
Still array formulas. Confirm with CTRL+SHIFT+ENTER.
Hope this helps / Lars-Åke
And with named ranges, _X, _Y1, and _Y2 respectively:
For the X-coordinate:
=INDEX(_X,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1)+
(INDEX(_X,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0))-
INDEX(_X,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1))*
(INDEX(_Y1,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1)-
INDEX(_Y2,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1))/
(INDEX(_Y1,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1)-
INDEX(_Y2,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1)-
INDEX(_Y1,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0))+
INDEX(_Y2,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)))
For the Y-coordinate:
=INDEX(_Y1,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1)+
(INDEX(_Y1,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0))-
INDEX(_Y1,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1))*
(INDEX(_Y1,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1)-
INDEX(_Y2,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1))/
(INDEX(_Y1,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1)-
INDEX(_Y2,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)-1)-
INDEX(_Y1,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0))+
INDEX(_Y2,MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)))
As you notice the expression
=MATCH(-SIGN(OFFSET(_Y1,,,1)-OFFSET(_Y2,,,1)),SIGN(_Y1-_Y2),0)
is quite frequent in these formula. It represents the index of the
values for which the difference of the Y values have switched sign
(compared to the Y value difference for the first X-value)
If you place this formula, note this part is the array formula that
requires the CTRL+SHIFT+ENTER, in e.g. cell D1 you can reduce the
formulas as follows.
For the X-coordinate:
=INDEX(_X,D1-1)+(INDEX(_X,D1)-INDEX(_X,D1-1))*(INDEX(_Y1,D1-1)-INDEX(_Y2,D1-1))/
(INDEX(_Y1,D1-1)-INDEX(_Y2,D1-1)-INDEX(_Y1,D1)+INDEX(_Y2,D1))
For the Y-coordinate
=INDEX(_Y1,D1-1)+(INDEX(_Y1,D1)-INDEX(_Y1,D1-1))*(INDEX(_Y1,D1-1)-INDEX(_Y2,D1-1))/
(INDEX(_Y1,D1-1)-INDEX(_Y2,D1-1)-INDEX(_Y1,D1)+INDEX(_Y2,D1))
Hope this helps / Lars-Åke