excel表格里A列名称有字母和数字怎么按数字升序排列?

如:
A00010三文鱼
 A00011三文鱼
 A00012三文鱼
 A00013三文鱼刺身
 A00014三文鱼刺身
 A00015三文鱼刺身
 A00016三文鱼刺身
 A00017三文鱼刺身
 A00018三文鱼刺身
 A00019三文鱼刺身
 A0001三鱼刺身
 A00020三文鱼刺身
 A00021三文鱼刺身
 A00022三文鱼刺身
 A00023三文鱼刺身
 A00024三文鱼刺身
 A0002三文鱼
 A0003三文鱼
 A0004三文鱼
 A0005三文鱼
 A0006三文鱼
 A0007三文鱼
 A0008三文鱼
 A0009三文鱼
排列后为:
A0001三鱼刺身
 A0002三文鱼
 A0003三文鱼
 A0004三文鱼
 A0005三文鱼
 A0006三文鱼
 A0007三文鱼
 A0008三文鱼
 A0009三文鱼 
A00010三文鱼
 A00011三文鱼
 A00012三文鱼
 A00013三文鱼刺身
 A00014三文鱼刺身
 A00015三文鱼刺身
 A00016三文鱼刺身
 A00017三文鱼刺身
 A00018三文鱼刺身
 A00019三文鱼刺身
 A00020三文鱼刺身
 A00021三文鱼刺身
 A00022三文鱼刺身
 A00023三文鱼刺身
 A00024三文鱼刺身

第1个回答  2013-01-29

选中要排序的列,执行下图操作:

第2个回答  2013-01-29
假设数据在A列,在B1输入:
=lookup(9e+307,--left(substitute(a1,"A",),row($1:$100)))
下拉填充至记录末
再全选工作表-->数据-->排序-->列B按升序排序本回答被提问者采纳
第3个回答  2013-01-29
用VBA可以实现
sub 排序()
dim va as range
call paixu(worksheets(1).range("a1:a24"))
end sub
function paixu(va)
dim x as range
dim st1 as string,st2,st3
i=1

for each x in va
st1=mid(x.value,5,1)
st2=mid(x.value,6,1)
if st2="三" and st1=1 then
set worksheets(1).cells(i,2)=x
i=i+1
elseif st2=1 then
set worksheets(1).cells(i,2).value=x
i=i+1
endif
next x
end funciton
相似回答