我的查询生成的记录集里有两个日期型的字段,导入Excel表格后,对应的字段却不是相应的日期值???  
  比如  
  2005-07-02   成了   38535  
  2005-07-31   成了   38564   
只能手动将日期对应的单元格格式设为日期型,请问有没有更好的办法?
我是这样导入的:
Dim i, j, k As Integer
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Set xlApp = CreateObject("excel.application")
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.Worksheets(1)
xlApp.Visible = True '设置EXCEL可见
On Error Resume Next
If Err.Number <> 0 Then Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.ActiveSheet
For k = 1 To DataGrid1.Columns.Count
xlSheet.Cells(1, k) = DataGrid1.Columns(k - 1).Caption
Next k
For i = 1 To PrimaryCls.PRS.RecordCount + 1
  For j = 0 To DataGrid1.Columns.Count
      
      xlSheet.Cells(i + 1, j + 1) = PrimaryCls.PRS.Fields(j)  '
  Next j
  PrimaryCls.PRS.MoveNext 'Next i
其中第二列对应日期

解决方案 »

  1.   


    Dim i, j, k As Integer 
    Dim xlApp As Excel.Application 
    Dim xlBook As Excel.Workbook 
    Dim xlSheet As Excel.Worksheet 
    Set xlApp = CreateObject("excel.application") 
    Set xlBook = xlApp.Workbooks.Add 
    Set xlSheet = xlBook.Worksheets(1) 
    xlApp.Visible = True '设置EXCEL可见 
    On Error Resume Next 
    If Err.Number <> 0 Then Set xlApp = CreateObject("Excel.Application") 
    Set xlBook = xlApp.Workbooks.Add 
    Set xlSheet = xlBook.ActiveSheet 
    For k = 1 To DataGrid1.Columns.Count 
    xlSheet.Cells(1, k) = DataGrid1.Columns(k - 1).Caption 
    Next k 
    For i = 1 To PrimaryCls.PRS.RecordCount + 1 
      For j = 0 To DataGrid1.Columns.Count 
          
          xlSheet.Cells(i + 1, j + 1) ="'" &  PrimaryCls.PRS.Fields(j)  ' 加上一个 ' 
      Next j 
      PrimaryCls.PRS.MoveNext ' Next i