如何返回换行符左侧的文本

如何返回换行符左侧的文本

我有一张 Excel 表,其中包含一个具有以下内容的单元格:

Text1: "abc" linebreak1  
....  
Text31: "mno" linebreak31  

Text 32: ... linebreak32  
...  
Text50: "xyz" linebreak50  

不,我将读出“mno”,它位于 excel 单元格中的换行符 31 之前。我用十六进制编辑器打开了我的 excel 文件,注意到“Text31”行中“o”后面的换行符,
并使用了以下公式:

MID(CELL,FIND("Text31: ",CELL),FIND("Text31: ",CELL)-
FIND(CHAR(13)&CHAR(10),CELL))

但实际上并没有起作用。它返回了以下两行(空白行和“Text32:”行)。

我不知道如何才能恢复第 31 行换行符左侧的文本。我怎样才能获取此文本?

答案1

如果您只是想提取mno,这应该可行。请注意,这B3是文本。

编辑公式稍微有错误,以下是更正:

=LEFT(MID(B3,FIND("Text31: """,B3)+LEN("Text31: """),LEN(B3)-FIND("Text31: """,B3)-LEN("Text31: """)),FIND("""",MID(B3,FIND("Text31: """,B3)+LEN("Text31: """),LEN(B3)-FIND("Text31: """,B3)-LEN("Text31: """)))-1)

编辑 2:由于这有点令人困惑,下面是我得出公式的方法。我把所有东西分成步骤/部分,并将它们放入各自的单元格中。继续这样做,直到得到正确的结果。我能够从中构建完整的公式。

以下是我分解的方法,您应该能够将其直接复制并粘贴到 excel 中。将原始文本放在 B3 中,然后将以下内容粘贴在其下方(在 B4-B11 中):

="Text31: """
=FIND(B4,B3)
=LEN(B4)
=LEN(B3)-B5-B6
=MID(B3,B5+B6,B7)
=FIND("""",B8)
=LEFT(B8,B9-1)

以下是我的描述,您可以将其粘贴到 A4-A11 中,以帮助您弄清楚您到底在看什么:

Text Prior to 'mno' : 
Start position of Prior Text:
Length of Prior Text:
Length of Original Text - Prior Text - Length of Prior Text:
Remaining Text:
Distance to next ":
Result:

相关内容