Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
vba中现有过滤器的自动过滤器_Vba_Excel - Fatal编程技术网

vba中现有过滤器的自动过滤器

vba中现有过滤器的自动过滤器,vba,excel,Vba,Excel,我有表1(Netmark Inc.8-28-2014)对于前端带有基于复选框的复选框的数据和表2,所选过滤器应应用于表1中,因此对于所应用的过滤器,在该主类别下还有更多的子复选框。如果我选中子复选框,则文件管理器需要应用于第一个选定的过滤器范围 范例 品牌是一个复选框,一旦我们选中它,它将在列a中列出所有具有品牌的行。 此筛选器的代码正在按预期工作 因此,现在在“品牌”复选框下有一些子类别,如Puma、nike,因此,如果我选中其中一个复选框,则不应删除以前的过滤器,而应应用当前子类别过滤器 在

我有表1(Netmark Inc.8-28-2014)对于前端带有基于复选框的复选框的数据和表2,所选过滤器应应用于表1中,因此对于所应用的过滤器,在该主类别下还有更多的子复选框。如果我选中子复选框,则文件管理器需要应用于第一个选定的过滤器范围

范例

  • 品牌是一个复选框,一旦我们选中它,它将在列a中列出所有具有品牌的行。 此筛选器的代码正在按预期工作
  • 因此,现在在“品牌”复选框下有一些子类别,如Puma、nike,因此,如果我选中其中一个复选框,则不应删除以前的过滤器,而应应用当前子类别过滤器
  • 在这里,我收到一条错误消息:range类的autofilter方法失败

    下面是第一个复选框的代码


    在复选框2中,您的范围是G1:G404,因此您的范围仅为1列宽,但您尝试在第7列进行筛选。字段参数与您使用的范围相关,而不是与工作表中的整个列相关

    My_Range.AutoFilter Field:=1, Criteria1:=CheckBox2.Caption
    
    Set My_Range = Sheets("Netmark Inc 8-28-2014").Range("G1:G404")
    My_Range.Parent.Select
    My_Range.AutoFilter Field:=7, Criteria1:=CheckBox2.Caption
    Sheets("Questionnaire").Select End Sub
    
    My_Range.AutoFilter Field:=1, Criteria1:=CheckBox2.Caption