发布网友 发布时间:2022-04-23 07:43
共5个回答
热心网友 时间:2022-06-23 15:14
1、首先我们打开excel办公软件,通过指定内容作为样例进行使用。
2、在开始菜单中默认选择开始选项,其中选择智能工具箱。
3、首先我们选中要处理的单元格区域。
4、然后选择工具栏中单元格处理,在下拉三角中选择保留内容。
5、弹出批量提取窗口,其中提取类型选择数字,因为上面我们提到中文和数字混合只保留数字,勾选数字并确定。
6、最后我们来查看批量提取效果。
热心网友 时间:2022-06-23 15:14
我对比了无知和JJ的公式,无知的公式应该很好。我写不好这样的公式。
只是不知道楼主要什么结果,无知的公式如果对中间有两组数据的只能提取第一组数据。
而我写的程序可以全部提取。不知道哪种要求符合楼主的要求,
我截了一个图对比。JJ的公式在第3行有错。
假设你的数据在A列,数字保存在B列。用VBA编程实现
ALT+F11——F7——粘贴如下代码——F5运行
Sub mysub()
Dim i As Integer, j As Integer
Dim str As String
For i = 1 To [a65536].End(xlUp).Row
str = ""
For j = 1 To Len(Range("a" & i))
If Mid(Range("a" & i), j, 1) Like "[0-9]" Or Mid(Range("a" & i), j, 1) = "." Then
str = str & Mid(Range("a" & i), j, 1)
End If
Next j
Range("b" & i) = str
Next i
End Sub
热心网友 时间:2022-06-23 15:14
B1=-LOOKUP(1,-RIGHT(LEFT(A1,LOOKUP(1,-MID(A1,ROW($1:$99),1),ROW($1:$99))),ROW($1:$99)))
公式下拉。
公式解析:
LOOKUP(1,-MID(A1,ROW($1:$99),1),ROW($1:$99))返回最后一位数字的位置,再LEFT取出左边的数据“"昆明XX278.34",再用LOOKUP函数从这个字符串的右边依次取数,最大值就是结果。
热心网友 时间:2022-06-23 15:15
假定原数据在A列从A1开始
=MAX(IF(ISNUMBER(1*MID(A1,ROW(INDIRECT("$1:$"&LEN(A1))),TRANSPOSE(ROW(INDIRECT("$1:$"&LEN(A1)))))),1*MID(A1,ROW(INDIRECT("$1:$"&LEN(A1))),TRANSPOSE(ROW(INDIRECT("$1:$"&LEN(A1))))),0))
按组合键ctrl+shift+enter结束公式输入,下拉填充
热心网友 时间:2022-06-23 15:16
假设数据在A1,在B1输入:
=LOOKUP(9E+307,--LEFT(MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"01234567")),99),ROW($1:$99)))