我有一个包含以下数据的列(按行):
纽约非常好,456983美食
北京很棒678932,文化很好。
....等等
我想仅提取原始列中的6位数字,并将其放置在按行排列的原始列旁边的另一列中
有n行...
如果没有VBA,有没有办法做到这一点?
请告诉我一些公式...
我不知道
答案 0 :(得分:1)
如果没有VBA,您可以使用以下Excel公式,假设A1是包含文本的单元格。
=MID(A1,FIND("------",SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"0","-"),"1","-"),"2","-"),"3","-"),"4","-"),"5","-"),"6","-"),"7","-"),"8","-"),"9","-")),6)
答案 1 :(得分:0)
你可以使用它,输入数组公式:
=MID(A2,MIN(IFERROR(FIND({0,1,2,3,4,5,6,7,8,9},A2),"")),SUMPRODUCT(--ISNUMBER(MID(A2,ROW($A$1:$A$200),1)+0)))
答案 2 :(得分:0)
这对我有用。这将查找字符串中的所有数字。你当然可以添加限制 子编号提取() x = ActiveCell Dim valIs As String Dim a As String 对于i = 1到Len(x) a =中(x,i,1) 如果是IsNumeric(a)那么 valIs = valIs&一个 结束如果
Next i
MsgBox valIs
End Sub
答案 3 :(得分:0)
此公式适用于您的两个示例:
=MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&1234567890)),6)