我的excel宏给出了
运行时错误438
在笔记本电脑上可以正常工作,但是当我将Excel邮寄给使用Excel 2013的人员时,会出现此错误。
这是我的错误代码。这将用于按升序对数字进行排序:
Sub SORT_X()
'
' SORT_X Macro
'
'
Range("A8:A712").Select
Application.CutCopyMode = False
Selection.TextToColumns Destination:=Range("E8"), DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(2, 1), Array(3, 1)), TrailingMinusNumbers:= _
True
Range("H8").Select
Application.CutCopyMode = False
Range("B8:B712").Select
Selection.Copy
ActiveWindow.ScrollRow = 704
ActiveWindow.ScrollRow = 697
ActiveWindow.ScrollRow = 545
ActiveWindow.ScrollRow = 342
ActiveWindow.ScrollRow = 165
ActiveWindow.ScrollRow = 163
ActiveWindow.ScrollRow = 151
ActiveWindow.ScrollRow = 34
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 10
ActiveWindow.ScrollRow = 1
Range("H8").Select
ActiveSheet.Paste
Range("G8").Select
Application.CutCopyMode = False
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.CLEAR
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add2 Key:=Range("G8"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal 'error
答案 0 :(得分:1)
更改此部分:
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add2
对此:
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add
答案 1 :(得分:0)
_
是用于将代码拆分到下一行的运算符。因此,请在以下位置删除空白空间:
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add2 Key:=Range("G8"), _
代码应为:
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add2 Key:=Range("G8"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal