在Excel中连续偏移

时间:2014-07-22 04:55:57

标签: excel-formula

您好我问这个因为我没有看到它在任何其他Excel帖子中解决(对不起,如果它已经。我已经找了大约一个小时,没有看到任何东西,但请链接,如果有)。这可能很简单,但我很难过。我正在使用Excel 2010.基本上我试图将值偏移到行中找到的值旁边的一列。所以,例如,我有几个值:

FNAME --- --- L-NAME状态 - 由于---许可 - ?由于

John Smith MA 2012年获得许可2014

Kathlyn Sanchez非执照2012 HI 2009

我想在该行中找到所需值的权利值。我试图在没有任何vba的情况下执行此操作,因为该表将由不熟悉vba的其他人使用。因此,在John的情况下,我有一个拉动状态MA的公式。而且我需要它旁边的价值,所以在这种情况下2012年。但在Kathlyn的情况下,我需要同样的东西,但是状态与John的情况不同。如果值在每一行中移动,我该如何抵消?

有人知道这是否可行?

2 个答案:

答案 0 :(得分:0)

        A                                           B   C
__________________________________________________________________________          
1   ||  John Smith MA 2012 Licensed 2014            MA  2012 
2   ||  Kathlyn Sanchez Not License 2012 HI 2009    HI  2009

如果我理解你有一张桌子(如上所述),你可以在一栏中找到“John Smith MA 2012 Licensed 2014”或“Kathlyn Sanchez Not License 2012 HI 2009”等文字。 (我们称之为A列)然后在另一列中使用某种公式来提取一段文本 - 在这种情况下是状态。 (称之为B栏)。

然后在C列中,您希望能够拉出B列中文本右侧的下一个文本块,以空格(!!)绑定。如果是这种情况,请使用以下公式:

=RIGHT(LEFT(A1,IFERROR(SEARCH(" ",A1,SEARCH(" ",A1,SEARCH(B1,A1))+1),LEN(A1))),IFERROR(SEARCH(" ",A1,SEARCH(" ",A1,SEARCH(B1,A1))+1),LEN(A1))-SEARCH(" ",A1,SEARCH(B1,A1)))

如果没有,请更好地解释“John Smith MA 2012 Licensed 2014”实际上是如何以列的形式存储的。

答案 1 :(得分:0)

你正在思考正确的方向。你的答案没有得到我所需要的东西(这是我自己的错)因为我把我正在做的事情简化了,不想在我的解释中过于复杂。我最终想出了如何通过为许可和未许可分配任意值来获得我需要的东西,然后放入一些帮助列来获得我需要的东西。谢谢大家发布答案。对不起,我的回复花了这么长时间,事情变得非常繁忙。我非常感谢你的帮助!