excel中批量处理,去掉单元格中的文字,保留数字及符号
例如:300*300*20厚芝麻灰烧面300*300*30芝麻灰荔枝面300*100*40芝麻灰烧面500*40芝麻灰荔枝面100*100*20黄锈石荔枝面黄锈石荔枝面1...
例如:
300*300*20厚芝麻灰烧面
300*300*30芝麻灰荔枝面
300*100*40芝麻灰烧面
500*40芝麻灰荔枝面
100*100*20黄锈石荔枝面
黄锈石荔枝面100*100*20
200*200*30荔枝面黄锈石
800*70黄锈石光面
600*500*30光面中国黑
中国黑光面20
黄锈石荔枝面30厚
......................................
将以上N个单元格内的文字部分去掉,保留数字和字符,用公式下拉来完成,请高手指点赐教,非常感谢!! 展开
300*300*20厚芝麻灰烧面
300*300*30芝麻灰荔枝面
300*100*40芝麻灰烧面
500*40芝麻灰荔枝面
100*100*20黄锈石荔枝面
黄锈石荔枝面100*100*20
200*200*30荔枝面黄锈石
800*70黄锈石光面
600*500*30光面中国黑
中国黑光面20
黄锈石荔枝面30厚
......................................
将以上N个单元格内的文字部分去掉,保留数字和字符,用公式下拉来完成,请高手指点赐教,非常感谢!! 展开
5个回答
展开全部
假设数据在A列,从A1开始,你可以试试下面的公式:
=MID(A1,MIN(IF(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<256,ROW(INDIRECT("1:"&LEN(A1))),"")),MAX(IF(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<256,ROW(INDIRECT("1:"&LEN(A1))),""))-MIN(IF(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<256,ROW(INDIRECT("1:"&LEN(A1))),""))+1)
在B1输入,数据公式按 CTRL+SHIFT+ENTER结束。
=MID(A1,MIN(IF(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<256,ROW(INDIRECT("1:"&LEN(A1))),"")),MAX(IF(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<256,ROW(INDIRECT("1:"&LEN(A1))),""))-MIN(IF(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<256,ROW(INDIRECT("1:"&LEN(A1))),""))+1)
在B1输入,数据公式按 CTRL+SHIFT+ENTER结束。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
先要保障数字和文字必须是前后关系,不能是夹层。
如最后一条记录必须先用替换命令一次去掉。ctrl+H查找“厚”,替换为空值。
然后就可以用公式了。
数据在A列,公式如下:
=IF(ISERROR(VALUE(LEFT(A1, 1))),RIGHT(A1,LEN(A1)-(LENB(A1)-LEN(A1))),LEFT(A1,LEN(A1)-(LENB(A1)-LEN(A1))))
如最后一条记录必须先用替换命令一次去掉。ctrl+H查找“厚”,替换为空值。
然后就可以用公式了。
数据在A列,公式如下:
=IF(ISERROR(VALUE(LEFT(A1, 1))),RIGHT(A1,LEN(A1)-(LENB(A1)-LEN(A1))),LEFT(A1,LEN(A1)-(LENB(A1)-LEN(A1))))
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果数字和符号的位置完全没有规律,像最后一个夹在中间,那公式难实现,VBA方便些。如果都是有规律的,要么在左边,要么在右边,那公式比较容易实现你的要求。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
贴到word,查找替换就完了
追问
怎么个查找替换法,能否详述?谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-08-19 · 知道合伙人软件行家
关注
展开全部
用自定义函数:
Function delchina(cell As Range)
Dim text As String Dim txt As String Dim i As Integer text = cell.Value
For i = 1 To Len(cell)
If Asc(Mid(text, i, 1)) > 0 Then txt = txt & Mid(text, i, 1)
Next i
delchina = txt
End Function
Function delchina(cell As Range)
Dim text As String Dim txt As String Dim i As Integer text = cell.Value
For i = 1 To Len(cell)
If Asc(Mid(text, i, 1)) > 0 Then txt = txt & Mid(text, i, 1)
Next i
delchina = txt
End Function
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询