是这样的,数据导入到EXCEL下这样显示:
   工资表
工号  姓名  工资
001   陈一  100
002   陈二  200
003   陈三  300
-     -     -
-     -     -
-     -     -数据不知共多少页,我是按照30条记录跳页的。现在有个问题:
就是要更改成如下所示的格式,即在每页开头处,加个统计当页的工资。   工资表   当页共:
工号  姓名  工资
001   陈一  100
002   陈二  200
003   陈三  300
-     -     -
-     -     -
-     -     -谢谢,在线等待

解决方案 »

  1.   

    我是加啊,但会出错。。
    如果加个当页工资统计的,应加在那,帮修改下,谢谢。。Set xlapp = CreateObject("Excel.Application") '创建EXCEL应用类
    xlapp.Visible = True '设置EXCEL可见
    Set xlbook = xlapp.Workbooks.Open("D:\xls\tua.xls") '打开EXCEL工作簿
    Set xlsheet = xlbook.Worksheets(1) '打开EXCEL工作表
    xlsheet.Activate '激活工作表  i = 4 '输出数据从第5行开始
        rs.MoveFirst
        Do Until rs.EOF
            i = i + 1
                             
                xlsheet.Cells(i, 1) = i - 4         '序号
                xlsheet.Cells(i, 2) = rs![nb]       '员工卡号
                xlsheet.Cells(i, 3) = rs![ne]       '员工姓名
                xlsheet.Cells(i, 4) = Format(rs![tot], "0.00")      '所得工资
                                 
         If (i - 4) Mod 33 = 0 And i <> 4 Then  '每33条记录为一页,原来的判断不对
             xlsheet.Range(xlsheet.Cells(i, 1), xlsheet.Cells(i, rs.Fields.Count)).Select
                                        '选中当前添加的最后一行,这是关键
             SendKeys "^{end}"           '向应用程序EXCEL发送一个组合键CTRL+END,使光标移到文件尾
             xlsheet.HPageBreaks.Add Before:=xlapp.ActiveCell   '添加一个分页符  '添加一个分页符
         End If
            
            rs.MoveNext
        Loop
    xlapp.Worksheets.PrintPreview
    xlapp.DisplayAlerts = False
    xlapp.Quit
    Set xlapp = Nothing
      

  2.   

    '請你自己加個CommonDialog控件
    Private Sub Command3_Click()
        Dim objFileSystem As Object
        Dim objExcelText As Object
        Dim strTableString As String, i As Integer, strFileName As String
        Dim pubConn As New ADODB.Connection
        Dim rsTable As New ADODB.Recordset
        Dim strConn As String
        Dim strSQL As String    strConn = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=develop; password=12345;Data Source=ServerNmae"
        pubConn.Open strConn
        rsTable.CursorLocation = adUseClient
        strSQL = "select top 10 * from gate_register"
        rsTable.Open strSQL, pubConn, adOpenDynamic, adLockOptimistic
        
        For i = 0 To rsTable.Fields.Count - 1
            strTableString = strTableString & rsTable.Fields(i).Name & Chr(9)  '獲取字段名
        Next
        strTableString = strTableString & rsTable.GetString     '字段名+數據庫的記錄
        
        cmDialog.CancelError = False
        cmDialog.FileName = "FileName"  '默認生成的文件名
        cmDialog.DialogTitle = "Save Export File"
        cmDialog.Filter = "Excel (*.xls)|*.xls|文本文件(*.DBF)|*.DBF|檔案文件(*.doc)|*.doc|所有文件(*.*)|*.*"
        cmDialog.DefaultExt = "*.xls"
        cmDialog.ShowSave
        strFileName = cmDialog.FileName
        
        Set objFileSystem = CreateObject("Scripting.FileSystemObject")
        Set objExcelText = objFileSystem.createtextfile(strFileName, True)
        objExcelText.writeline (strTableString)
        
        objExcelText.Close
        Set objFileSystem = Nothing
    End Sub
      

  3.   

    hdhai9451,谢谢你。
    我只想在原来的基础上修改。。
      

  4.   

    我觉得:(1)选用ADODC,或用DataEnvironment来查询出记录的总数,再来计算。这样不在存计算EXCEL中的行和列的问题。
            (2)做完了后,可在最后做个循环,在指定行,列处添加。行的指定需要你自已计算。