【发布时间】:2016-02-11 16:24:32
【问题描述】:
我的组合框 (ActiveX) 有下面的代码,用于根据值过滤表中的数据。
代码执行良好并过滤表,但随后由于范围类的自动过滤方法失败错误而崩溃
我真的不明白为什么?
组合框是一个 ActiveX 组合框并链接到单元格 F5,列表范围是一个动态范围,根据表格中的内容而变化
代码:
Sub ComboBox1_Change()
If Range("F5").Value = "" Then
ActiveSheet.ListObjects("Table3").Range.AutoFilter
Else
With ActiveSheet
.ListObjects("Table3").Range.AutoFilter Field:=3, _
Criteria1:=Range("F5").Value
End With
End If
End Sub
【问题讨论】:
-
我想找出这个错误的真正原因,因为
on error resume next只是一种忽略错误的方法,而不是避免错误。 (1) 可以表示 Table3 的范围,例如A2:C1000。 (2) 组合框是否与Table3在同一张表上? -
组合框位于单元格 F5 中,列表对象位于单元格 C8:H152 的同一工作表中。
-
C8:H152 不包括 F5...