怎么在excel的一个单元格里提取想要的部分字符在另外一列单元格显示?

需要提取从右到左开始算起,所在的第一个“部“字的“->”符号中间的内容,可能看到下面举例会比较容易理解。我想要得到B列的公式。例如:ABA总部->a部->1科a部B总部-... 需要提取从右到左开始算起,所在的第一个“部“字的“->”符号中间的内容,可能看到下面举例会比较容易理解。我想要得到B列的公式。
例如:
A B
A总部->a部->1科 a部

B总部->甲分部->b部->3科 b部
B总部->甲分部->f部->4科 f部
B总部->乙分部->d部->2科 d部
A总部->a部->5科 a部
B总部->甲分部->f部->8科->X室 f部
展开
 我来答
凌文元LWY
高粉答主

2015-10-31 · 每个回答都超有意思的
知道大有可为答主
回答量:3.6万
采纳率:76%
帮助的人:1.3亿
展开全部

在B1单元格输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向下填充公式

=TRIM(RIGHT(SUBSTITUTE(LEFT(A1,MATCH(,0/(MID(A1,ROW($1:$99),1)="部"))),">",REPT(" ",99)),9))

公式表示:通过MATCH(,0/(MID(A1,ROW($1:$99),1)="部"))找到“部”所在的位置,并以此位置截取左边的字符串,然后将其中的>替换为99个空格,替换完成后,取基右边的9个字符串,并将多余的空格通过TRIM去除。

 

详见附图

了尘和尚
2013-11-01 · 幻人心识本来无,罪福皆空无所住。
了尘和尚
采纳数:4256 获赞数:20085

向TA提问 私信TA
展开全部
B1数组公式:
=MID(A1,MATCH(,0/(MID(A1,ROW($1:$99),1)="部"))-1,2)
按CTRL+SHIFT+回车键结束,下拉。
追问
您好,这个f部不一定单单两个字的,可能f部等于采购部,也可能等于市场规划部,可以优化一下吗?
追答
数组公式:
=TRIM(RIGHT(SUBSTITUTE(LEFT(A1,MATCH(,0/(MID(A1,ROW($1:$99),1)="部"))),">",REPT(" ",99)),9))
按CTRL+SHIFT+回车键结束,下拉。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
学徒YU
2015-10-21 · 知道合伙人软件行家
学徒YU
知道合伙人软件行家
采纳数:208 获赞数:785
09年进入招商银行 14年进入财富恒瑞金融有限公司 有丰富的Excel使用经验

向TA提问 私信TA
展开全部
根据你的单元格实际情况使用MID,RIGHT,LEFT
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wjl20090101
2013-11-01 · TA获得超过1960个赞
知道小有建树答主
回答量:575
采纳率:50%
帮助的人:188万
展开全部
源数据毫无规律可循,如何用函数,函数要解决的是规律的数据批量化操作的问题,建议你把前面的数据用空值补齐,这样才能用提取函数来解决问题.
不然就是有人能解决,恐怕你也看不懂,并且也不会做,并且学不到任何东西.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
skyzxh

2013-11-01 · 知道合伙人软件行家
skyzxh
知道合伙人软件行家
采纳数:2623 获赞数:8344
毕业于中科院,硕士,30年工程从业经验。现任公司技术负责。

向TA提问 私信TA
展开全部
如果严格符合你所说的规律,可以用vba来做
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式