2015-09-25 64 views
0

我有一排看起来像这样的行;查找上一行中最后一个非空白单元格的位置

A1; test1 
B1; - 
C1; - 
D1; test2 
E1; - 
F1; test1 
G1; - 
H1; - 
I1; - 
J1; - 
K1; test2 
L1; - 
M1; test1 

其中test1/2可以是单词或数字,“ - ”是空白单元格。每个值之间的空白单元格数量可能会有所不同。

我在下面的行中试图做的是返回最后一个非空白值,如果直接上面的单元格是空的。

所以下面的行看起来像;

test1, test1, test1, test1, *test2,test2,test2,* test1... 

我一直利用各种查找试图/匹配,试图恢复它需要返回的单元格的位置,但是查找是不一致的,比赛将只返回第一个。

任何人都可以帮助我一个公式,可以在单元格A1开始使用,并拖动行的其余部分?

回答

0

您需要查找使用MATCH function使用非排序近似查找无法匹配的文本字符串或数字。 MAX function可以提供两者中较大的一个,并且在不匹配的情况下可以提供零。

Return last known text or number

在A2的公式为,

=INDEX(1:1, MAX(IFERROR(MATCH(1E+99, $A1:A1), 0), IFERROR(MATCH("zzz", $A1:A1), 0))) 

填充右是必要的。

+0

这些工作很棒,非常感谢 – TBadger

0

试试这个,输入作为数组公式(CTRL-SHIFT-ENTER):如果你要分析所有的行1

的1:

=INDEX(YourRange,MAX(IF(ISBLANK(YourRange),"blank",COLUMN(YourRange)))) 

其中YourRange是说A1:M1,或1

希望有帮助

相关问题