Answers:
该方法将允许/
基于B2中的值提取任何分离的段。
首先定义一个名称 seq_99
seq_99 refers to: =IF(ROW(INDEX($1:$65535,1,1):INDEX($1:$65535,255,1))=1,1,(ROW(INDEX($1:$65535,1,1):INDEX($1:$65535,255,1))-1)*99)
这会创建一个值数组 {1;99;198;297;...}
注意如果您的任何细分可能更长,则增加99; 例如到999)
然后试试这个公式:
=INDEX(TRIM(MID(SUBSTITUTE(A2,"/",REPT(" ",99)),seq_99,99)),B2)
B2包含您要提取的段的位置。
如果你想倒数,那么
1 =最后一段
2 =最后一段的旁边
然后将B2替换为:
(LEN(A2)-LEN(SUBSTITUTE(A2,"/","")))+2-B2
所以公式看起来像:
=INDEX(TRIM(MID(SUBSTITUTE(A2,"/",REPT(" ",99)),seq_99,99)),(LEN(A2)-LEN(SUBSTITUTE(A2,"/","")))+2-B2)
以下是使用公式的示例。请注意,2
在列B中,公式返回最后一个段的第二个段:
Define Name
是Defined Names
公式栏的选项卡上的一个选项。名称可以指代位置或公式。在互联网上搜索如何使用此功能的示例; 只需将seq_99
公式和公式复制到相应的框中即可。
seq_99
。如果您想为自己的目的定义另一个名称,那么您当然可以这样做。
=INDEX(TRIM(MID(SUBSTITUTE(A2,"/",REPT(" ",99)),seq_99,99)),B2)
在B2中使用。然后用对话替换forumla的'B2'部分(LEN(A2)-LEN(SUBSTITUTE(A2,"/","")))+2-B2
?
用这个:
=TRIM(MID(SUBSTITUTE(A2,"/",REPT(" ",99)),(LEN(A2)-LEN(SUBSTITUTE(A2,"/",""))-1)*99+1,99))
它将返回倒数第二个: