公式或VBA – 查找string和一定数量的字符后面
我一直在使用
=if(isnumber(search("MyString",A1,1)),"MyString","Not Found")
查看是否在描述较长的单元格中存在“MyString”。 通常“MyString”后跟一个数字(即更改),如“MyString#”。
但是,“MyString”和它的数字不总是存在于描述的同一个地方:
A2 = "MyString# is great today." A3 = "Today is a great day for MyString# to be in Excel."
有没有一种方法可以searchMyString,然后打印它和随后的数字? (我可能会想到这个或者忽略一些简单的东西!)
谢谢!!
=IFERROR(MID(A1,SEARCH("MyString",A1),LEN("MyString")+1),"Not Found")
如果您只想显示数字,请执行以下操作:
=IFERROR(MID(A1,SEARCH("MyString",A1)+LEN("MyString"),1),"Not Found")
注意:我假定在“MyString”之后跟随的数字总是1个数字。
如果MyString#之后的数据将始终为空,则可以使用下面的公式获取数字,无论数字是多less。
=IFERROR(MID(A1,SEARCH("MyString",A1),SEARCH(" ",A1,SEARCH("MyString",A1))-SEARCH("MyString",A1)),"Not Found")
仅限数量:
=IFERROR(MID(A1,SEARCH("MyString",A1)+LEN("MyString"),SEARCH(" ",A1,SEARCH("MyString",A1))-SEARCH("MyString",A1)-LEN("MyString")),"Not Found")