查找连续数据的最后一个单元格的名称

时间:2011-09-13 14:28:45

标签: excel find cell excel-2008

我已经找到了答案,但似乎我只能找到基于VBA的解决方案,它们似乎不再是Excel 2008中的一个选项。

我正在尝试返回包含数据的行中最后一个单元格的名称。它看起来像这样:

+===========================================================+
                 A      /  B  /  C  /  D  /  E  (columns)
+===========================================================+
1         || [Formula] /  3  /  4  /  5  / [blank]
2         || [Formula] /  7  /  8  / [blank] / [blank]
3         || [Formula] /  9  / 10 / 11 / 12
(rows)
+===========================================================+

,最终结果如下:

+===========================================================+
             A   /  B  /  C  /  D  /  E  (columns)
+===========================================================+
1         || D1 /  3  /  4  /  5  / 
2         || C2 /  7  /  8  /     / 
3         || E3 /  9  / 10 / 11 / 12
(rows)
+===========================================================+

4 个答案:

答案 0 :(得分:1)

您的数据看起来像是从左到右排序 如果是,则可以从=MATCH(MAX(C4:K4);C4:K4)之类的内容开始,以检索行的最后一个单元格(max)的列索引。从那里,很容易建立地址:
=ADDRESS(ROW();MATCH(MAX(C1:K1);C1:K1);4)


编辑:将ADDRESS与COUNT或COUNTA相结合(来自Dustin Geile的好主意)不需要对项目进行排序:

=ADDRESS(ROW();COLUMN()+COUNT(B1:Z1);4)

答案 1 :(得分:1)

=CHAR(COUNTA(B1:ZZ1) + 65) & ROW()

答案 2 :(得分:0)

你可以试试这个数组形式:

{=ADDRESS(ROW(B2),MAX(IF(ISEMPTY(B2:H2),0,COLUMN(B2:H2))))}

使用 Ctrl Shift 输入

进行验证

答案 3 :(得分:0)

如果您要查找包含数据的最后一个单元格,可以编写一个快速函数并将其放在工作簿中的VBA模块中。

Public Function LastCell(inRange as Range)    LastCell = inRange.End(XlToRight).Address 结束功能

如果你想获得一个指向单元格的范围对象,或者只是省略'.Address'。

然后您可以在类似......

的公式中使用它

= LastCell(A1)

此致 射线