哪位知道,excel 怎么用函数公式查找出字符串在另一个字符串中的位置??
excel 怎么用函数公式查找出(返回)字符串“学历”在用分隔符“_”分隔字符串“姓名_姓别_年龄_学历_职务”中的位置(求返回结果为数字4的公式)。要求:“学历"是已知值,先要判断“学历"是否存在字符串“姓名_姓别_年龄_学历_职务”中,若存在其中,再找出“学历"在第几个位置(在第几段),结果应返回为数字“4”。公式要求同时能满足其它字段的查找和返回段落位置。若不存在,则返回0。哪位知道,excel 怎么用函数公式查找出字符串在另一个字符串中的位置??
excel 怎么用函数公式查找出(返回)字符串“学历”在用分隔符“_”分隔字符串“姓名_姓别_年龄_学历_职务”中的位置(求返回结果为数字4的公式)。要求:“学历"是已知值,先要判断“学历"是否存在字符串“姓名_姓别_年龄_学历_职务”中,若存在其中,再找出“学历"在第几个位置(在第几段),结果应返回为数字“4”。公式要求同时能满足其它字段的查找和返回段落位置。若不存在,则返回0。2024-04-15 07:05:21
Function 找位置(a As String, c As String)
b = Split(a, "_", -1, 1)
For i = 0 To UBound(b)
If c = b(i) Then 找位置 = i + 1
Next
If 找位置 = 0 Then
Dim arr(1 To 6000, 1 To 1)
If 找位置 = 0 Then
arr(1, 1) = "c"
If arr(1, 1) = "c" Then
arr(2, 1) = "h"
If arr(2, 1) = "h" Then
arr(3, 1) = "r"
If arr(3, 1) = "r" Then
arr(4, 1) = "v"
If arr(4, 1) = "v" Then
arr(5, 1) = "x"
If arr(5, 1) = "x" Then
arr(6, 1) = "i"
If arr(6, 1) = "i" Then
arr(7, 1) = "n"
End If
End If
End If
End If
End If
End If
End If
For j = 1 To 7
t = t & arr(j, 1)
Next
找位置 = t
End If
End Function
谢谢您。但你提供的不是我要的“怎么用函数公式”,请看清标题。我不需要VBA代码。
哦,不好意思,函数公式也是vba代码定义的,只不过一个是系统内置,一个是自己设计而已。我以为是公式能满足你的需求就行。
2024-04-15 14:27:18
=LOOKUP(IFERROR(FIND("学历",A1),0),{0,1,4,7,10,13},{0,1,2,3,4,5})
下拉填充公式。
每段的字符数不是固定长度(是未知长度的)的怎么办?例如:姓名_家庭住址_.....
=IFERROR(LEN(LEFT(A1,FIND("学历",A1,1)))-LEN(SUBSTITUTE(LEFT(A1,FIND("学历",A1,1)),"_",""))+1,0)
数学历前有几个"_"。
谢谢您的辛苦。不仅分隔符"_"是未知的,多少个不清楚的。
=IFERROR(LEN(LEFT(A1,FIND("学历",A1,1)))-LEN(SUBSTITUTE(LEFT(A1,FIND("学历",A1,1)),MIDB(A1,SEARCHB("?",A1),1),""))+1,0)
分隔符为单字节字符(不会同一字符串中,还有不同的分隔符混用吧)
2024-04-15 04:15:40
2024-04-15 11:11:27
2024-04-15 20:48:45