从空白单元格之间的下一个单元格中指定值

时间:2016-06-13 17:52:05

标签: excel

基本上,我有一个很长的专栏,就像这样

A
[blank]
1
2
3
2
5
[blank]
B
[blank]
4
2
5
3
2
[blank]
C
[blank]
9
[blank]
D

其中A,B,C等是"位置"其中"项目" (数字)存储。这些位置显示在"项目"的末尾。在该位置列出。我需要的是一个可以在列表中运行的公式,并在单独的列中返回以下结果:

A
[blank]
1 B
2 B
3 B
2 B
5 B
[blank]
B
[blank]
4 C
2 C
5 C
3 C
2 C
[blank]
C
[blank]
9 D
[blank]
D

尝试了几乎只有边际结果的事情。任何帮助将不胜感激。

我尝试了IF

的一些变体
=IF(AND(B1="",B3=""),B2,"")

然后我得到了更精细的一些

=IF(B:B<>"",INDIRECT(ADDRESS(MIN((B:B<>"")*(ROW(B:B))),COLUMN(B:B))))

但问题是,我不需要MIN(first)MAX(last),只需要下一个&#34;位置&#34;两个空白之间

2 个答案:

答案 0 :(得分:1)

这将拉出尾随地址并将其放入与该数字相邻的单元格中。但是,如果您需要同一单元格中的数字和尾随地址,则需要使用串联修改公式。

=IF(AND(A2="",A4=""),A3,IF(A1="","",B2))

将其放在A旁边的列中,假设A在单元格A1中,然后向下复制。

答案 1 :(得分:0)

假设您的数据来自Cell A1 A18 ,以下是根据您的测试数据为我工作的公式:

=IF(ISTEXT(A1),"",
CONCATENATE(IF(ISTEXT(A1),"",
IF(ISBLANK(A1),"",A1))," ",
IF(AND(A2="",A4=""),
IF(OR(ISNUMBER(A3),A3=""),"",A3),
IF(A1="","",B2)
)
)
)

此公式使用 IF, ISTEXT, ISBLANK, AND, OR, ISNUMBER 的组合 只需将此公式放在单元格 B1 中并向下拖动,直到列 A 中有数据为止。

  • 根据评论和更新的问题

如果您只需要A,B,C等,请说B列,而不是将单元格中的下列公式放在下面。我已经增强了Forward Ed的公式。

=IF(AND(A2="",A4=""),IF(OR(ISNUMBER(A3),A3=""),"",A3),IF(A1="","",B2))

如果您遇到任何问题,请告诉我。