excel中批量处理,去掉单元格中的文字,保留数字及符号

例如:
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个单元格内的文字部分去掉,保留数字和字符,用公式下拉来完成,请高手指点赐教,非常感谢!!

第1个回答  2014-08-19
假设数据在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结束。
第2个回答  2014-08-19
先要保障数字和文字必须是前后关系,不能是夹层。
如最后一条记录必须先用替换命令一次去掉。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))))
第3个回答  2014-08-19
如果数字和符号的位置完全没有规律,像最后一个夹在中间,那公式难实现,VBA方便些。如果都是有规律的,要么在左边,要么在右边,那公式比较容易实现你的要求。
第4个回答  2014-08-19
贴到word,查找替换就完了追问

怎么个查找替换法,能否详述?谢谢

第5个回答  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本回答被提问者和网友采纳