【发布时间】:2018-09-26 07:30:47
【问题描述】:
我想知道是否有人可以帮助我。我创建了一个用户表单,可以更改 Excel 工作表上的过滤器。我的列包含 1-3 的优先级。当表单启动时,我可以选择将报告打印为 PDF,但我希望允许用户在打印为 PDF 之前根据优先级应用/过滤结果。我有三个要在过滤器代码中使用的复选框(见下图)。这是我卡住的地方,我不确定如何将代码输入到 Criteria 部分,因此当用户选中优先级 1 框时,它会在打印之前过滤掉该部分。如果值为真,我将分配与优先级关联的数值。然后在应用过滤器时将该数字用作值“标准”。有一个更好的方法吗?
ActiveSheet.Range("$W$7:$AG$4501").AutoFilter Field:=6, Criteria:= "What Do i Put Here?"
【问题讨论】:
-
是否有一列填有优先级?如果是这样,请过滤该值。您是否查找过有关如何使用
Range.Autofilter的任何答案?有很多解决方案 -
是的,该列填充了优先级(上图更新)。我能够找到有关 Range.Autofilter 的信息,但我很难找到有关如何将复选框的值链接到自动过滤器所需条件的信息。如果用户选中优先级 1 框并单击确定,我希望自动过滤器将真值关联为范围自动过滤条件中的 1 以及检查优先级的任意组合。
-
这无关紧要,但这真的需要依赖
ActiveSheet吗? -
这很好,不,它不需要是活动表。我可以定义工作表适用于。
标签: excel vba checkbox userform