Hi Don
thanks for this repost
![Smile :) :)](/styles/default/custom/smilies/smile.gif)
But Aladin pointed correctly out that instead of
REPT(CHAR(255),255)
one should use
REPT("z",255)
So below a corrected repost for finding the last value in columns or
rows (also corrected some missing parenthesis and wrong sheet
references) :
-------------------
A. Collection of formulas to return the last value in a COLUMN
depending on the type/structure of data.
1. If you have no blank rows in between use
=OFFSET($A$1,COUNTA($A:$A)-1,0)
2. If you have blank rows in between try the following depending of the
type of values in your column:
2.a. If you have ONLY text values in column A try
=INDEX(A:A,MATCH(REPT("z",255),A:A))
2.b. If you have ONLY numbers in column A:
=INDEX(A:A,MATCH(9.99999999999999E307,A:A))
or
=LOOKUP(9.99999999999999E307,A:A)
2.c. If you have BOTH types (text and values), but AT LEAST one text
and one numeric entry
=INDEX(A:A,MAX(MATCH(9.99999999999999E307,A:A),MATCH(REPT("z",255),A:A)
))
2.d. If you don't know the type of data use the following array
function (entered with CTRL+SHIFT+ENTER)
=INDEX(A:A,MAX(IF(ISBLANK(A:A),0,ROW(A:A))))
2.e If you don't want to count formula results like ="" as entry adapt
2.d. as follows:
=INDEX(A:A,MAX(IF(A:A<>"",0,ROW(A:A))))
--
B. Collection of formulas to return the last value in a ROWdepending on
the type/structure of data.
1. If you have no blank columns in between use
=OFFSET($A$1,0,COUNTA($1:$1)-1)
2. If you have blank columns in between try the following depending of
the type of values in your row:
2.a. If you have ONLY text values in column A try
=INDEX(1:1,1,MATCH(REPT("z",255),1:1))
2.b. If you have ONLY numbers in column A:
=INDEX(1:1,1,MATCH(9.99999999999999E307,1:1))
or
=LOOKUP(9.99999999999999E307,1:1)
2.c. If you have BOTH types (text and values), but AT LEAST one text
and one numeric entry
=INDEX(1:1,1,MAX(MATCH(9.99999999999999E307,1:1),MATCH(REPT("z",255),1:
1)))
2.d. If you don't know the type of data use the following array
function (entered with CTRL+SHIFT+ENTER)
=INDEX(1:1,1,MAX(IF(ISBLANK(1:1),0,COLUMN(1:1))))
2.e If you don't want to count formula results like ="" as entry adapt
2.d. as follows:
=INDEX(1:1,1,MAX(IF(1:1<>"",0,COLUMN(1:1))))