我只想提取每个单元格中的第一行文本。(抱歉,我无法找到其他方法来说明截图)。
我在Company列中使用以下公式来查找换行符并提取其左侧的文本:=LEFT(G2,Find(Char(10),G2))如果我手动检查并突出显示Description列中的整个单元格,然后点击enter,它将在第一行文本后添加一个换行符,但否则就没有换行符。因此出现#VALUE错误。有什么想法如何批量插入换行符到每个单元格中,以便现有的函数将工作?打开其他解决方案。谢谢。
Company
=LEFT(G2,Find(Char(10),G2))
Description
enter
#VALUE
t5zmwmid1#
您可以:
=LEFT(G2&CHAR(10), FIND(CHAR(10), G2&CHAR(10)))
删除A列中的所有内容,并在A1中使用以下内容:
={"Company"; INDEX(IFNA(REGEXEXTRACT(B2:B, "(.+)\n"), B2:B))}
={"Company"; INDEX(TRIM(IFNA(REGEXEXTRACT( REGEXREPLACE(B2:B, "(\d+)", CHAR(10)&"$1"), "(.+)\n"), B2:B)))}
sqserrrh2#
IF(REGEXMATCH(A1, Char(10)),LEFT(A1,Find(Char(10),A1)-1),A1)
伪码:
if \newline_char is found in A1: # REGEXMATCH(A1, Char(10)): return first line of cell excluding \newline_char # LEFT(A1,Find(Char(10),A1)-1) else: return A1
o8x7eapl3#
您需要找到char的位置,它将转到下一行CHAR(10),公式为FIND()。然后使用Mid(),选择获取line1和line2所需的子字符串。这里有完整的示例
CHAR(10)
FIND()
Mid()
=find(CHAR(10) ; A2) // Position of the char that goes to the next line =mid(A2 ; 1 ; C2 -1) // First Line =mid(A2 ; C2 ; 999999) // Second Line
3条答案
按热度按时间t5zmwmid1#
您可以:
更新1:
删除A列中的所有内容,并在A1中使用以下内容:
更新2:
sqserrrh2#
伪码:
o8x7eapl3#
您需要找到char的位置,它将转到下一行
CHAR(10)
,公式为FIND()
。然后使用
Mid()
,选择获取line1和line2所需的子字符串。这里有完整的
示例