Excel表格按照字符后面的数值排序

 时间:2024-09-23 23:35:09

如下图所示,如果按照通常的方法排序(升碌食撞搁序),将会按照字母的顺序进行排序,如何才能按照字符后面的数值进行排序呢?

Excel表格按照字符后面的数值排序

工具/原料

操作设备:计算机

操作系统:Windows7

办公软件:Excel2010

方法/步骤

1、打开Excel表格,点击【开发工具】、【VisualBasic】调出VBE编辑器。

Excel表格按照字符后面的数值排序

2、点击【插入】、【模块】。

Excel表格按照字符后面的数值排序

3、在模块代码框里边输入以下VBA程序代码。SubNumberPaixu()Dim坡纠课柩i1,i2,i3,str1O荏鱿胫协nErrorResumeNextApplication.ScreenUpdating=False'关闭屏幕显示更新Setmysheet3=ThisWorkbook.Worksheets("Sheet3")'定义工作表Sheet3Fori1=2To1000'从第2行到1000行SetMyCell=mysheet3.Cells(i1,1)'定义单元格IfMyCell<>""Then'如果单元格不是空白,则Fori2=1ToLen(MyCell)'对单元格里边的每一个字符进行截取、判断str1=Mid(MyCell,i2,1)IfIsNumeric(str1)=TrueThen'如果截取的字符是数字,则i3=i3+1mysheet3.Cells(i1,2)=Left(MyCell,i2-1)'写入B列单元格mysheet3.Cells(i1,3)=Right(MyCell,Len(MyCell)-i2+1)'写入C列单元格ExitFor'退出For循环EndIfNextEndIfNextmysheet3.Sort.SortFields.Clear'清除高级筛选里边的条件mysheet3.Sort.SortFields.AddKey:=Range("C2:C1000"),_SortOn:=xlSortOnValues,Order:=xlAscending,DataOption:=xlSortNormalWithmysheet3.Sort'筛选.SetRangeRange("A2:C1000").Header=xlGuess.MatchCase=False.Orientation=xlTopToBottom.SortMethod=xlPinYin.ApplyEndWithFori1=1Toi3mysheet3.Cells(i1+1,1)=mysheet3.Cells(i1+1,2)&mysheet3.Cells(i1+1,3)Nextmysheet3.Columns("B:C").Delete'删除B、C列Application.ScreenUpdating=True'恢复屏幕更新显示EndSub

Excel表格按照字符后面的数值排序

4、确认无误后(主要是B、C两列里边没有数据),在VBE编辑器的功能区里边点击“运行”图标运行程序。

Excel表格按照字符后面的数值排序

5、回到Excel工作表界面,将会看到A列数据的排序结果。

Excel表格按照字符后面的数值排序

excel遇到不能自动填充的情况怎么办 excel如何自动更新时间? 2007Excel表格进行重复数字标红 气象应急值班制度与岗位责任 EXCEL公式篇——VLOOKUP
热门搜索
跳蚤咬的症状图片 冰峰魔恋漫画 摇曳百合漫画 微笑狗恐怖图片 竹子图片大全