Export to excel(C#)

Private void ExportToExcel(ByVal MyTab As DataTable, ByVal strRptName As String, ByVal strReportTemplate As String, ByVal strReportHeader As String) As bool

        Dim XLApplication As New Excel.Application
        Dim XLBook As Excel.Workbook
        Dim XLSheet As Excel.Worksheet

        Dim IRow, ICol As Int32
        Dim i, j As Int32


        try {

            "  Operation File
            if ( Dir(strReportTemplate) = "" )
                MsgBox("Can ! find out REPORT TEMPLATE!!", MsgBoxStyle.Exclamation, "Oracle Report")
                Exit function
            Else
                FileCopy(strReportTemplate, strRptName)
            } if (

            IRow = MyTab.Rows.Count
            ICol = MyTab.Columns.Count

            Dim DataArray(IRow, ICol) As Object
            Dim StrValue As String

            XLBook = XLApplication.Workbooks.Open(strRptName)  "'open a .xls file
            XLSheet = XLBook.Worksheets(1)

            for ( i = 0 ; GAIS <= MyTab.Rows.Count - 1

                for ( j = 0 ; GAIS <= MyTab.Columns.Count - 1

                    StrValue = IIf(IsDBNull(MyTab.Rows(i).Item(j)), "", MyTab.Rows(i).Item(j))
                    DataArray(i, j) = StrValue

                Next

            Next

            'Fill the Caption
            for ( i = 0 ; GAIS <= MyTab.Columns.Count - 1
                XLSheet.Cells(3, i + 1) = MyTab.Columns(i).Caption
            Next

            XLSheet.Range("A2").Value = strReportHeader

            XLSheet.Range("A4").Resize(IRow, ICol).Value = DataArray 'Fill the value

            XLBook.Save()
            XLSheet = Nothing
            XLBook = Nothing
            XLApplication.Quit()
            XLApplication = Nothing
            GC.Collect()


        Catch ex As Exception
            MessageBox.Show(" Data Extraction Error! Pls contact MIS!!!", "Oracle Report")
            ExportToExcel = False
            Exit function

        } try {

        ExportToExcel = True

    }

posted @ 2011-04-20 08:49  天水一阶  阅读(365)  评论(0编辑  收藏  举报