+ -
当前位置:首页 → 问答吧 → 求救啊。。VB中MSHFlexGrid的数据导入EXCEL中出错啊

求救啊。。VB中MSHFlexGrid的数据导入EXCEL中出错啊

时间:2011-09-26

来源:互联网

如题,将MSHFlexGrid中得数据导入到EXCEL中后部分数据发生了变化
如“11-1-20”这样的字符串或文本吧 导入EXCEL之后就变成了“1963-11-1”类似于这样的...
“11-1-20”貌似被当做日期处理了啊。。。。求解此问题怎么处理啊。。。。急啊。。。。。

作者: mengting0917   发布时间: 2011-09-26

前面   加一个   “‘”[code=VB]
Public   Function   ExportToExcel(objMsg   As   MSHFlexGrid,   ProgressBar1   As   Object)   As   Boolean
'输出到任何版本的Excel
    On   Error   GoTo   ExportToExcel_ErrorHandler
                   
                    '过滤没有显示出来数据列
                    Dim   iCol                       As   Long
                   
                    Dim   objExcelApp           As   Object
                    Dim   objExcelBook           As   Object
                    Dim   objExcelSheet           As   Object
       
                    On   Error   Resume   Next
                    Set   objExcelApp   =   GetObject(,   "Excel.Application ")
                    If   err.Number   <>   0   Then
                                        Set   objExcelApp   =   CreateObject( "Excel.Application ")
                    End   If
                    On   Error   GoTo   ExportToExcel_ErrorHandler
       
                    Set   objExcelBook   =   objExcelApp.Workbooks.Add
                    'Set   objExcelSheet   =   objExcelBook.Worksheets(1)
                       
                    If   Val(objExcelApp.Application.Version)   > =   8   Then
                                    Set   objExcelSheet   =   objExcelApp.ActiveSheet
                    Else
                                    Set   objExcelSheet   =   objExcelApp
                    End   If
                       
                    Dim   lngRowsCount           As   Long,   lngColumnsCount               As   Long,   lngRow               As   Long,   lngColumn               As   Long
                    Dim   strText           As   String
                       
                    lngRowsCount   =   objMsg.Rows
                    lngColumnsCount   =   objMsg.Cols
                   
                    ProgressBar1.Visible   =   True
                    ProgressBar1.Max   =   lngRowsCount
                    ProgressBar1.Min   =   0
                    ProgressBar1.Value   =   0

                    For   lngRow   =   1   To   lngRowsCount
                        iCol   =   0
                                    For   lngColumn   =   1   To   lngColumnsCount
                                                If   objMsg.ColWidth(lngColumn   -   1)   <   100   Then
                                                        iCol   =   iCol   +   1
                                                End   If
                                               
                                                  If   objMsg.ColWidth(lngColumn   -   1)   >   100   Then
                                                                  strText   =   objMsg.TextMatrix(lngRow   -   1,   lngColumn   -   1)

                                                        If   Trim(strText)   <>   " "   Then
                                                                        objExcelSheet.Cells(lngRow,   lngColumn   -   iCol)   =   " ' "   &   strText
                                                        End   If
                                                   
                                                End   If
                                    Next
                                    ProgressBar1.Value   =   lngRow
                    Next
                       
                    objExcelApp.Visible   =   True
                   
                   
                   
                    Set   objExcelSheet   =   Nothing
                    Set   objExcelBook   =   Nothing
                    Set   objExcelApp   =   Nothing
                       
                       
                        ProgressBar1.Value   =   ProgressBar1.Max
                        ProgressBar1.Visible   =   False
                       
                       
                    ExportToExcel   =   True
                       
ErrorHandler:
                    Exit   Function
ExportToExcel_ErrorHandler:
                    MsgBox   err.Description
                    Resume   ErrorHandler
End   Function


[/code]

作者: ttpsan550   发布时间: 2011-09-26

引用 1 楼 ttpsan550 的回复:
前面 加一个 “‘”[code=VB]
Public Function ExportToExcel(objMsg As MSHFlexGrid, ProgressBar1 As Object) As Boolean
'输出到任何版本的Excel
On Error GoTo ExportToExcel_ErrorHandler
……


不对啊,前面加了“‘”还是不对。

作者: mengting0917   发布时间: 2011-09-26

求救啊。。来个高人解答一下 啊

作者: mengting0917   发布时间: 2011-09-26

热门下载

更多