none
VB6.0 如何將Access的資料備份成EXecl檔 RRS feed

  • 問題

  • 各位大大,可否請問一下,能在VB6.0的環境下,將Access的資料庫中的REPORT1匯出並轉成Execl檔存檔嗎??

    因為我只會匯出成execl並開啟,

    因為目前要應用在現場的操作電腦中(無Office軟體)!所以想直接匯出存成Exexle格式的檔案可copy到辦公室的電腦

     

    這是我每各月1號匯出的語法

     

    Code Snippet
    Dim RS As New ADODB.Recordset
        Dim StrCnn, StrSQL As String
        Dim D As String, D1 As String
        Static DK As Integer
        Set Cnn = CreateObject("ADODB.Connection")
        Set RS = CreateObject("ADODB.Recordset")
        D = Format(Date, "yyyy/MM/d")
        D1 = Format(Date - 31, "yyyy/MM/d")
        If Day(Now) = 1 Then
        W% = 1
        Else
        W% = 0
        DK = 0
    End If
       If W% = 1 Then
          If W% <> DK Then
              DK = W%
              
       StrCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\REPORT\ALM.mdb"
        Cnn.Open StrCnn
        StrSQL = " SELECT * FROM REPORT1  where  S_STIME  BETWEEN  #" & Format(D, "yyyy/MM/dd") & " # And # " & Format(D1, "yyyy/MM/dd") & "#  ORDER BY S_ETIME"
        RS.Open StrSQL, Cnn, adOpenDynamic
       
        Set MyXlsApp = CreateObject("Excel.Application")
        MyXlsApp.Visible = True
        Set xlbook = MyXlsApp.workbooks.Add
        Set xlsheet1 = xlbook.worksheets(1)
       
        xlsheet1.Name = "查詢結果"
        xlsheet1.cells(1, 1).Value = "Data"
        xlsheet1.cells(1, 2).Value = "Time"
        xlsheet1.cells(1, 3).Value = "MG"
       
        j = 2
        If RS.EOF Then
            MsgBox "Error! No Data Found !!", vbOKOnly
        Else
            Do Until RS.EOF
                xlsheet1.cells(j, 1).Value = RS.Fields(0).Value
                xlsheet1.cells(j, 2).Value = RS.Fields(1).Value
                xlsheet1.cells(j, 3).Value = RS.Fields(2).Value
               
                j = j + 1
                RS.MoveNext
            Loop
        End If
        Cnn.Close
        Set RS = Nothing
        Set Cnn = Nothing
         End If
        End If
    End Sub

     

     


    2008年11月25日 下午 01:23

解答

所有回覆

  • 感謝大大的告知~~我已經可以備份了

    目前語法如此

     StrSQL = "SELECT * Into REPORT2 In CPU  [EXCEL 8.0; database=C:\CPU.mdb; ] From REPORT1 ;"

    但是存檔路徑能變更嗎??目前是存於跟執行檔同一個資料夾中

    這樣出來的是.xls 若是改成 .csv檔該如何變化呢??

    備份功能OK了!!只是想知道多一些相關的!!

    希望大大能幫幫我囉

     

    2008年11月28日 上午 02:37
  • 你動態去組 strSQL 語法不就可以改路徑了..

    2008年11月28日 上午 09:36
  • 感謝心冷大大的幫助~~這樣我就能備份了

    2008年12月1日 上午 01:08