在线等一个excel公式!满意立即给分谢谢!!!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在线等一个excel公式!满意立即给分谢谢!!!相关的知识,希望对你有一定的参考价值。

现有数据 b列
517BH38
3451B39
23511HH40

请问如何实现在a列向下拉填充的时候只提取英文字母前的数字
比如a列向下拉只有
517
3451
23511

很不幸的告诉你,这个可能需要VBA,因为你要excel在各个单元格中逐字地进行判断。

如果你执意不用VBA,也是有个方法:

第一步:在c1输入公式=IF(b1="","",IFERROR(VALUE(MID($b$1,1,1)),""))
在d1输入公式=IF(c1="","",IFERROR(VALUE(MID($b$1,2,1)),""))
以此类推,一直输入到O列(视b列字符最大长度)
第二步,在P1输入=CONCATENATE(c1,d1,e1,...,o1),取出每单元格数值
第三部,吧P列作为数据基础在A列建立下拉框追问

vba也可以只要能用嘿嘿

追答

我这个方法虽然笨了点,但比较好理解,而且有0也无所谓

参考技术A 在A1单元格输入公式
=LOOKUP(10^10,1*LEFT(A1,ROW(INDIRECT("1:"&LEN(A1)))))
然后下拉填充追问

但是 01113Z42 提取到a1就只剩下1113了被0不见了请问如何可以设置下

追答

最长有多少个0

追问

数字前只有1个0 比如013 012543 只是数字的位数不等

追答

=LEFT(A1,LOOKUP(10^10,1*LEFT(A1,ROW($1:$100)),ROW($1:$100)))
或用数组公式
=LEFT(A1,MATCH(10^10,1*LEFT(A1,ROW($1:$100))))

追问

谢谢可行
再问一个!!
089A03zz38 11A011H38
从右到左提取英文前的字符,
比如上面两个提炼出 089A03 11A011

追答

你的问题太多了,超出我能力范围.请参考其他高手.你应该去翻阅十万个为什么.

本回答被提问者采纳
参考技术B 数据在A列
B1输入
=LOOKUP(9E+307,--MID(A1,1,ROW($1:$100)))追问

在a1输入公式n/a错误 如何解决大大

追答

唉,不是在B1输入吗?
=IF(ISNA(LOOKUP(9E+307,--MID(A1,1,ROW($1:$100))) ),"",LOOKUP(9E+307,--MID(A1,1,ROW($1:$100))) )
如果只有一个直接删掉也行,
太懒,,,,,

追问

大大的公式没问题,但是 01113Z42 提取到a1就只剩下1113了被0不见了亲问如何可以设置下

追答

哥们 咱能一次说完吗。
这个就不能用这个公式了,
=IF(ISNA(LEFT(A1,LOOKUP(9E+307,--MID(A1,1,ROW($1:$100)),ROW($1:$100)))),"",LEFT(A1,LOOKUP(9E+307,--MID(A1,1,ROW($1:$100)),ROW($1:$100))))

追问

零的问题解决了大大!!!还有一个问题最后一个黑黑!!!我给大大加分
089A03HZ38 11A011H38
从右到左提取英文前的字符,
比如上面两个提炼出 089A03 11A011

追答

提取 H前面的 字符吧,
这个你要保证这里面只有一个 H 同时每个数据里面都有H

=LEFT(A1,FIND("H",A1,1)-1

追问

但是从右到左第一个字符是不固定的!~通过2个公式完成提取也可以

追答

我也放弃了,十分同意楼下的回答,88了您呐,

参考技术C forestwja的办法比较笨也能用,好理解;MEIFEGHDPIG 的回答专业但看不懂。

以上是关于在线等一个excel公式!满意立即给分谢谢!!!的主要内容,如果未能解决你的问题,请参考以下文章

如何把一个excel表中的公式粘贴到另一张表上?我用的2007版本的。

求教:如何计算EXCEL时间差???要精确到分钟或者秒,在线等,谢

最强开源Excel在线协同工具

求一个手机软件可以打出3/2的手机计算器,在线等

PHOTOSHOP怎么抠图,在线等,有图。给分!

Excel 怎样批量添加逗号 急 在线等