|
本帖最后由 todaynew 于 2009-3-22 14:19 編輯
導出Excel表的方法很多,其中需要向特定單元格寫入數據的方法,是需要用到App的方法。本例從這個方法出發(fā),簡要描述了VB的基本寫法,初學者可根據其實際需要進行改造,由此便可以得到你自己需要導出的效果。
示例圖:
示例:
主要代碼:
Private Sub 導出_Click()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim rs As New ADODB.Recordset
Dim sql As String
Dim i As Long
Dim fname As String
Dim shtname As String
On Error GoTo 導出_Err
fname = GetFolder '打開文件夾并選取文件
shtname = InputBox("請選擇表:", "表選擇窗體", "Sheet1") '指定導出到的工作表名稱
sql = "select * from 聯(lián)合查詢 where 單據ID=" & Me.單據ID
rs.Open sql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
Set xlApp = CreateObject("Excel.Application") '創(chuàng)建一個Excel實例
xlApp.Application.Visible = True '使Excel可見
Set xlBook = xlApp.Workbooks.Open(fname) '打開Excel工作簿
'導出主表
xlBook.Application.Sheets(shtname).Select '按指定名稱選擇工作表
xlBook.Application.Range("A1").Value = "單 據 ID"
xlBook.Application.Range("A2").Value = "單據類型"
xlBook.Application.Range("C1").Value = "單據名稱"
xlBook.Application.Range("C2").Value = "日 期"
xlBook.Application.Range("B1").Value = Me.單據ID
xlBook.Application.Range("B2").Value = Me.單據類型
xlBook.Application.Range("D1").Value = Me.單據名稱
xlBook.Application.Range("D2").Value = Me.日期
'導出子表
xlBook.Application.Cells(3, 1).Value = "記錄ID"
xlBook.Application.Cells(3, 2).Value = "單據ID"
xlBook.Application.Cells(3, 3).Value = "物資ID"
xlBook.Application.Cells(3, 4).Value = "物資名稱"
xlBook.Application.Cells(3, 5).Value = "規(guī)格型號"
xlBook.Application.Cells(3, 6).Value = "計量單位"
xlBook.Application.Cells(3, 7).Value = "數量"
xlBook.Application.Cells(3, 8).Value = "單價"
xlBook.Application.Cells(3, 9).Value = "金額"
For i = 1 To rs.RecordCount
xlBook.Application.Cells(i + 3, 1).Value = rs("記錄ID")
xlBook.Application.Cells(i + 3, 2).Value = rs("單據ID")
xlBook.Application.Cells(i + 3, 3).Value = rs("物資ID")
xlBook.Application.Cells(i + 3, 4).Value = rs("物資名稱")
xlBook.Application.Cells(i + 3, 5).Value = rs("規(guī)格型號")
xlBook.Application.Cells(i + 3, 6).Value = rs("計量單位")
xlBook.Application.Cells(i + 3, 7).Value = rs("數量")
xlBook.Application.Cells(i + 3, 8).Value = rs("單價")
xlBook.Application.Cells(i + 3, 9).Value = rs("金額")
rs.MoveNext
Next
xlApp.Quit
rs.Close
Set xlApp = Nothing
Set xlBook = Nothing
導出_Exit:
Exit Sub
導出_Err:
MsgBox "數據錯誤,請檢查!"
Resume 導出_Exit
End Sub |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?注冊
x
|