你可以用PRINTER对象,或者用EXCEL呀

解决方案 »

  1.   

    如果使用PRINTER对象,改怎样使用哪??  请给出例子好吗?
      

  2.   

    我这里没有打印机,只是随便写了几句代码,如有问题,请提出
        Dim db As Connection
        Dim WithEvents adoPrimaryRS As Recordset
        Set db = New Connection
        
        Dim RecordWidth As Double
        Dim ThisRowY As Double
        Dim ThisColX As Double
        Dim ThisPageRecordID As Integer
        Dim i As Integer
        db.CursorLocation = adUseClient
        db.Open "PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source=D:\Program Files\Microsoft Visual Studio\VB98\Biblio.mdb;"
        
        Set adoPrimaryRS = New Recordset
        adoPrimaryRS.Open "select Au_ID,Author,[Year Born] from Authors", db, adOpenStatic, adLockOptimistic
        Printer.ScaleMode = 7
        Printer.ScaleLeft = 0
        Printer.ScaleTop = 0
        RecordWidth = 2
        ThisPageRecordID = 0
        Do While THISPAGEREOCRDID < adoPrimaryRS.RecordCount
            For i = 0 To adoPrimaryRS.Fields.Count - 1
                If adoPrimaryRS.RecordCount > 0 Then
                    adoPrimaryRS.MoveFirst
                    adoPrimaryRS.Move ThisPageRecordID
                End If
                Printer.CurrentX = 0
                ThisRowY = Printer.CurrentY
                ThisColX = 0
                Printer.Print adoPrimaryRS.Fields(i).Name
                Do While Not adoPrimaryRS.EOF And ThisColX + RecordWidth < Printer.ScaleWidth
                    Printer.CurrentY = ThisRowY
                    ThisColX = ThisColX + RecordWidth
                    Printer.CurrentX = ThisColX
                    Printer.Print adoPrimaryRS.Fields(i).Value
                    adoPrimaryRS.MoveNext
                    ThisPageRecordID = ThisPageRecordID + 1
                Loop
            Next i
            Printer.NewPage
        Loop
        Printer.EndDoc
      

  3.   

    其实我还是觉得用EXCEL比较简单一些,如果您想要实现预览的功能,就用PICTURE吧,代码和上面写的是差不多的,只要把对象改为PICTURE就可以了