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

 时间:2024-10-13 00:34:51

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

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

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

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

3、在模块代码框里边输入以下VBA程序代码。Sub NumberPaixu()Dim 坡纠课柩i1, i2, i3, str1O荏鱿胫协n Error Resume NextApplication.ScreenUpdating = False '关闭屏幕显示更新Set mysheet3 = ThisWorkbook.Worksheets("Sheet3") '定义工作表Sheet3For i1 = 2 To 1000 '从第2行到1000行Set MyCell = mysheet3.Cells(i1, 1) '定义单元格 If MyCell <> "" Then '如果单元格不是空白,则 For i2 = 1 To Len(MyCell) '对单元格里边的每一个字符进行截取、判断 str1 = Mid(MyCell, i2, 1) If IsNumeric(str1) = True Then '如果截取的字符是数字,则 i3 = i3 + 1 mysheet3.Cells(i1, 2) = Left(MyCell, i2 - 1) '写入B列单元格 mysheet3.Cells(i1, 3) = Right(MyCell, Len(MyCell) - i2 + 1) '写入C列单元格 Exit For '退出For循环 End If Next End IfNextmysheet3.Sort.SortFields.Clear '清除高级筛选里边的条件mysheet3.Sort.SortFields.Add Key:=Range("C2:C1000"), _SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormalWith mysheet3.Sort '筛选 .SetRange Range("A2:C1000") .Header = xlGuess .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .ApplyEnd WithFor i1 = 1 To i3mysheet3.Cells(i1 + 1, 1) = mysheet3.Cells(i1 + 1, 2) & mysheet3.Cells(i1 + 1, 3)Nextmysheet3.Columns("B:C").Delete '删除B、C列Application.ScreenUpdating = True '恢复屏幕更新显示End Sub

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

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

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

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

Excel表格按照字符后面的数值排序
  • excel遇到不能自动填充的情况怎么办
  • excel如何自动更新时间?
  • 2007Excel表格进行重复数字标红
  • 气象应急值班制度与岗位责任
  • EXCEL公式篇——VLOOKUP
  • 热门搜索
    六年级手抄报 开学手抄报简单又好画 手抄报边框设计图大全 共创文明城市手抄报 电子手抄报模板 节水节电节粮手抄报 读书活动手抄报 读书手抄报大全 关于科普知识的手抄报 手抄报排版