excel排序:文本加数字的

来源:百度知道 编辑:UC知道 时间:2024/05/17 09:22:53
各位帮个忙...弄了一上午了..快昏了~~

就是我有一列数据排序后是这样的
1列10号
1列11号
1列12号
1列13号
1列14号
1列15号
1列16号
1列17号
1列18号
1列19号
1列1号
1列20号
1列21号
1列22号
1列23号
1列24号
1列25号
1列26号
1列27号
1列28号
1列29号
1列2号
有什么办法可以让1列1号和1列2号回到正确的位置吗?
我的分数不多了..但是确是所能给的最多。..谢谢!!!!
手动设置的确比较麻烦,因为我有十几列这样的数据。而且右边还有很多列,筛选会不会不太方便?对EXCEL也不是很熟,谢谢各位了 。。

先在旁边的的那列把几号取出来,用下面的公式(假设,你给出的数据在A列)
=if(len(a1)=4,mid(a1,3,1),mid(a1,3,2))

然后全选,根据B列的值排序。

按筛选排序后复制出来就行了

把1列1号变成1列01号试试,手动修改嫌烦的话,
用if选条件,mid公式取字符位数填0,公式很简单。

编一个宏,运行一下就全解决了问题,宏代码:
Sub abc()
For i = 2 To Range("A2").End(xlDown).Row
For j = 1 To Range("A2").End(xlToRight).Column
If Len(Cells(i, j)) = 4 Then
Cells(i, j) = Left(Cells(i, j), 2) & "0" & Right(Cells(i, j), 2)
End If
Next j
Next i
End Sub