【发布时间】:2015-02-10 06:46:07
【问题描述】:
我有一个宏,名为“隐藏已完成”,自 4 月以来一直有效。该宏应该按完成日期对项目进行排序,然后隐藏在完成日期字段中包含数据的行。出于某种原因,它上周失败了,我无法确定出了什么问题。一个相同的宏正在另一个选项卡上运行(表和字段名称的不同名称),它工作正常。我在 Stack Overflow(或其他站点)上没有找到任何与我的问题足够接近的线程来提供帮助。这是宏:
Sub hideCompleted()
'
' showCompleted Macro
'
Application.ScreenUpdating = False
'
Range("A1").Select
ActiveSheet.ListObjects("Table2").Range.AutoFilter Field:=1
' sortDataByDate Macro
'
ActiveWorkbook.Worksheets("Project List").ListObjects("Table2").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Project List").ListObjects("Table2").Sort.SortFields.Add _
Key:=Range("Table2[[#All],[Complete" & Chr(10) & "Date]]"), SortOn:=xlSortOnValues, _
Order:=xlAscending, DataOption:=xlSortTextAsNumbers
With ActiveWorkbook.Worksheets("Project List").ListObjects("Table1").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
'
' hideCompleted Macro
'
'
Range("A2").Select
ActiveSheet.ListObjects("Table2").Range.AutoFilter Field:=1, Criteria1:="="
Application.ScreenUpdating = True
End Sub
Excel 提请注意:运行时错误“1004”:对象“_Global”的方法“范围”失败。
但调试器中突出显示的代码是:
我检查了单个单元格中的字符数,看看我是否超过了 911 个字符的限制(尤其是评论列中的单元格 - F 列)。事实并非如此。我还附上了一张 Excel 工作表的图片,以说明它是如何使用的。任何帮助表示赞赏。
【问题讨论】:
-
我在 Stack Overflow(或其他站点)上没有找到任何足够接近的线程 哪些线程?此错误有一个非常常见的原因...
-
您最近是否将第一列的标签从“Complete & Chr(10) & Date”更改为“Complete & Chr(10) & Date/closed”?您的代码引用了前者,而您的表格图像包含后者。
-
大卫,我在问题框中输入了文本“运行时错误'1004':对象'_Global'的方法'范围'失败”并查看了建议问题中的所有链接以确认那个我的还没有被覆盖。
-
Excel 开发人员,这就是问题所在。谢谢你。如此简单的事情怎么会被忽视,这总是让我感到惊讶。我进行了 3 个多小时的追逐,试图在代码中找到问题,而实际上它一直是电子表格(操作员错误)。