excel 取 包含某个字符

来源:百度知道 编辑:UC知道 时间:2024/05/18 11:41:37
各位高手:请赐教
1212 32132 AAA00121231 231
5454 986 54 AAA9878946 1233
5641 AAA8945665
6546 541 12313 25 AAA6132156 SFS

想取到的数为
AAA0012123
AAA9878946
AAA8945665
AAA6132156

看数据内容,A1连着的是AAA00121231
取得的是AAA0012123
也就是定长取得吧~
----------------------如果是定长10
试试这个:
1、假设A1到A4为数据
2、在B1中输入公式:
=IF(ISERROR(SEARCH("AAA",A1)),"",MID(A1,SEARCH("AAA",A1),10))
3、公式下拉至B4。
4、出现结果。

----------------------如果不是定长,即取到下一个空格试试这个:
1、假设A1到A4为数据
2、在B1中输入公式:
=IF(ISERROR(SEARCH("AAA",A1)),"",IF(ISERROR(SEARCH(" ",A1,SEARCH("AAA",A1))),MID(A1,SEARCH("AAA",A1),LEN(A1)+1-SEARCH("AAA",A1)),MID(A1,SEARCH("AAA",A1),SEARCH(" ",A1,SEARCH("AAA",A1))-SEARCH("AAA",A1))))
3、公式下拉至B4。
4、出现结果。

假设你上面的数据在A1:A4
按下ALT+F11,菜单:插入-模块,复制下面代码.
退出
然后在B1输入=STR(A1),然后向下填充公式.B1:B4就是你要提取的.
这个公式可以当作一般函数来通用了.只要输入=STR(你要提取的单元格),就会出来结果.

Public Function STR(ByVal N As String) As String
A = Split(N, " ")
For X = 0 To UBound(A)
If Asc(Left(A(X), 1)) &