Private Sub Cmdprint_Click()
Set cnn = New ADODB.Connection
cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=入库管理.mdb;Persist Security Info=False"
cnn.Open
If Check1.Value = 0 And Check2.Value = 0 Then
 DR1.Show
End If
If Check1.Value = 0 And Check2.Value = 1 Then
DataEnvironment1.rsCommand1_分组.Open "select 供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质 from 入库单 where 入库单编码 >= '" & Trim(Combo1.Text) & " 'and 入库单编码<='" & Trim(Combo2.Text) & "' ", cnn, adOpenKeyset, adLockOptimistic
DR2.Show
End If
If Check1.Value = 1 And Check2.Value = 1 Then
DataEnvironment1.rsCommand1_分组.Open "select 供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质 from 入库单 where 入库单编码 >= '" & Trim(Combo1.Text) & " 'and 入库单编码<='" & Trim(Combo2.Text) & "' And 入库时间 >=#" & Format(DTPicker1.Value, "yyyy-mm-dd") & " #and 入库时间 <=# " & Format(DTPicker2.Value, "yyyy-mm-dd") & "# order by 入库单编码"
DR2.Show
End If
If Check1.Value = 1 And Check2.Value = 0 Then
DataEnvironment1.rsCommand1_分组.Open "select  供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质  from 入库单 where 入库时间 >=#" & Format(DTPicker1.Value, "yyyy-mm-dd") & " #and 入库时间 <=# " & Format(DTPicker2.Value, "yyyy-mm-dd") & "# order by 入库单编码", cnn, adOpenKeyset, adLockOptimistic
DR2.Show
 
End IfEnd Sub选择复选框后查询并打印,报表无法实现按供应商名称分组打印。如何解决?

解决方案 »

  1.   

    Private Sub Cmdprint_Click()
    Set cnn = New ADODB.Connection
    cnn.ConnectionString = "rovider=Microsoft.Jet.OLEDB.4.0;Data Source=入库管理.mdbersist Security Info=False"
    cnn.Open
    If Check1.Value = 0 And Check2.Value = 0 Then
    DR1.Show
    End If
    If Check1.Value = 0 And Check2.Value = 1 Then
    DataEnvironment1.rsCommand1_分组.Open "select 供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质 from 入库单 where 入库单编码 >= '" & Trim(Combo1.Text) & " 'and 入库单编码<='" & Trim(Combo2.Text) & "' ", cnn, adOpenKeyset, adLockOptimistic
    DR2.Show
    End If
    If Check1.Value = 1 And Check2.Value = 1 Then
    DataEnvironment1.rsCommand1_分组.Open "select 供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质 from 入库单 where 入库单编码 >= '" & Trim(Combo1.Text) & " 'and 入库单编码<='" & Trim(Combo2.Text) & "' And 入库时间 >=#" & Format(DTPicker1.Value, "yyyy-mm-dd") & " #and 入库时间 <=# " & Format(DTPicker2.Value, "yyyy-mm-dd") & "# order by 入库单编码"
    DR2.Show
    End If
    If Check1.Value = 1 And Check2.Value = 0 Then
    DataEnvironment1.rsCommand1_分组.Open "select  供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质  from 入库单 where 入库时间 >=#" & Format(DTPicker1.Value, "yyyy-mm-dd") & " #and 入库时间 <=# " & Format(DTPicker2.Value, "yyyy-mm-dd") & "# order by 入库单编码", cnn, adOpenKeyset, adLockOptimistic
    DR2.ShowEnd IfEnd Sub
      

  2.   

    注意缩进,程序读起来方便Private Sub Cmdprint_Click()
        Set cnn = New ADODB.Connection
        cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=入库管理.mdb;Persist Security Info=False"
        cnn.Open
        
        If Check1.Value = 0 And Check2.Value = 0 Then
            DR1.Show
        End If
        
        If Check1.Value = 0 And Check2.Value = 1 Then
            DataEnvironment1.rsCommand1_分组.Open "select 供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质 from 入库单 where 入库单编码 >= '" & Trim(Combo1.Text) & " 'and 入库单编码 <='" & Trim(Combo2.Text) & "' ", cnn, adOpenKeyset, adLockOptimistic
            DR2.Show
        End If
        
        If Check1.Value = 1 And Check2.Value = 1 Then
            DataEnvironment1.rsCommand1_分组.Open "select 供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质 from 入库单 where 入库单编码 >= '" & Trim(Combo1.Text) & " 'and 入库单编码 <='" & Trim(Combo2.Text) & "' And 入库时间 >=#" & Format(DTPicker1.Value, "yyyy-mm-dd") & " #and 入库时间 <=# " & Format(DTPicker2.Value, "yyyy-mm-dd") & "# order by 入库单编码"
            DR2.Show
        End If
        
        If Check1.Value = 1 And Check2.Value = 0 Then
            DataEnvironment1.rsCommand1_分组.Open "select  供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质  from 入库单 where 入库时间 >=#" & Format(DTPicker1.Value, "yyyy-mm-dd") & " #and 入库时间 <=# " & Format(DTPicker2.Value, "yyyy-mm-dd") & "# order by 入库单编码", cnn, adOpenKeyset, adLockOptimistic
            DR2.Show
        End IfEnd Sub
      

  3.   

    上面是打印按钮的代码  
     If Check1.Value = 0 And Check2.Value = 1 Then 
            DataEnvironment1.rsCommand1_分组.Open "select 供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质 from 入库单 where 入库单编码 >= '" & Trim(Combo1.Text) & " 'and 入库单编码 <='" & Trim(Combo2.Text) & "' ", cnn, adOpenKeyset, adLockOptimistic 
            DR2.Show 
        End If 
        
        If Check1.Value = 1 And Check2.Value = 1 Then 
            DataEnvironment1.rsCommand1_分组.Open "select 供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质 from 入库单 where 入库单编码 >= '" & Trim(Combo1.Text) & " 'and 入库单编码 <='" & Trim(Combo2.Text) & "' And 入库时间 >=#" & Format(DTPicker1.Value, "yyyy-mm-dd") & " #and 入库时间 <=# " & Format(DTPicker2.Value, "yyyy-mm-dd") & "# order by 入库单编码" 
            DR2.Show 
        End If 
        
        If Check1.Value = 1 And Check2.Value = 0 Then 
            DataEnvironment1.rsCommand1_分组.Open "select  供应商名称,入库单编码,入库时间,入库类别,进价,实付价格,折扣,入库性质  from 入库单 where 入库时间 >=#" & Format(DTPicker1.Value, "yyyy-mm-dd") & " #and 入库时间 <=# " & Format(DTPicker2.Value, "yyyy-mm-dd") & "# order by 入库单编码", cnn, adOpenKeyset, adLockOptimistic 
            DR2.Show 
        End If 
    这几个是需要按供应商名称打印    但目前实现不了
    因为用的是data report所以按此打印按钮是一个打印预览 在预览页面有打印按钮 那个是自动就可以打印
    现在就是分组不行
      

  4.   

    加上
    order by 供应商名称
      

  5.   

    看看这个
    http://wf66.com/page/20069/1972570346.htm