自动过滤和打印电子表格

时间:2019-09-05 07:58:40

标签: excel vba

我有一个包含3列值的电子表格。我想使用VBA循环代码进行过滤和打印。我写的代码如下。如果我为criteria 1:="<26"使用数字值,那么它将过滤26以下的所有值。但是我希望它使用循环值,例如2627 to 50以下的值,依此类推。

一次过滤器我可以使用打印命令,然后移至下一个值过滤器并打印,依此类推,直到所有打印到最后一行为止。不确定如何解决此问题。

Sub loopi()    
    Dim i As Integer
    Dim lrow As Integer

    i = 1        
    lrow = Cells(Rows.Count, 1).End(xlUp).Row

    Do While i < lrow        
        i = i + 25        
        ActiveSheet.Range("A1").AutoFilter Field:=1, Criteria1:="<i"        
        ActiveSheet.AutoFilterMode = False  
    Loop    
End Sub

1 个答案:

答案 0 :(得分:0)

  1. NavigationView { Form { Section { Text("Error message!") }.background(Color.red.opacity(0.2)) Section { Text("Label 1") } Section { Text("Label 2") } }.navigationBarTitle("title", displayMode: NavigationBarItem.TitleDisplayMode.inline) } i中未被识别为变量,但被识别为字符Criteria1:="<i"。您必须将其更改为i才能使用循环中的计数器Criteria1:="<" & i作为标准。

  2. 您的行计数变量的类型必须为i,因为Excel的行数超过Long不能处理的行数。

  3. 如果要获取25…50之类的数据,则需要2个带有Integer运算符的克里特里亚。因此,您需要计算开始和结束条件。


And