- string ls_docname, ls_named,ls_myvalue
- integer li_value,li_excelok, li_i, li_j
- // if dw_2.rowcount()<1 then return
- li_value = GetFileSaveName("導出設置",ls_docname, ls_named, "DOC", &
- "Excel (*.xls),*.xls,")
- IF li_value = 1 THEN
- dw_1.saveas( ls_docname,Excel8!,true)
- OLEObject ole_obj, ole_book
- ole_obj = CREATE OLEObject
- IF ole_obj.ConnectToNewObject("excel.application") <> 0 THEN
- MessageBox('OLE錯誤', 'OLE無法連接!')
- destroy ole_obj
- else
- ole_obj.visible = false
- ole_obj.Application.Workbooks.Open(ls_docname)
- ole_book = ole_obj.Worksheets(1)
- ole_obj.ActiveSheet.Columns(1).AutoFit
- ole_obj.ActiveSheet.Columns(2).AutoFit
- int li_count
- string ls_colname,ls_colcount
- ls_colcount = dw_1.Describe("DataWindow.Column.Count") // 取得列總數
- for li_count = 1 to integer(ls_colcount)
- ls_colname = dw_1.Describe("#"+string(li_count)+".name")
- ole_book.cells(1,li_count).value = dw_1.describe(ls_colname + "_t.text")
- next
- if ddlb_1.text="成品部門" or ddlb_1.text="區域" then
- //計算小計
- ole_book.cells(1,li_count+1).value="小計"
- int i
- for i=2 to dw_1.rowcount( )+1
- ole_book.cells(i,li_count+1).value="=SUM(D"+string(i)+":"+string(char(64+li_count))+string(i)+")"
- next
- //計算合計
- ole_book.cells(dw_1.rowcount( )+2,1).value="合計"
- ole_book.cells(dw_1.rowcount( )+2,1).Font.Name="黑體"
- ole_book.cells(dw_1.rowcount( )+2,1).Font.Bold=true
- int j
- for j=4 to li_count+1
- ole_book.cells(dw_1.rowcount( )+2,j).value="=SUM("+string(char(64+j))+"2:"+string(char(64+j))+string(dw_1.rowcount( )+1)+")"
- ole_book.cells(dw_1.rowcount( )+2,j).Font.Name="黑體"
- ole_book.cells(dw_1.rowcount( )+2,j).Font.Bold=true
- next
- end if
- //不顯示保存提示
- ole_obj.Application.DisplayAlerts = False
- //保存EXCEL
- ole_obj.ActiveWorkbook.Save
- //關閉所有打開的Excel文檔:
- ole_obj.Application.WorkBooks.Close()
- //關閉當前操作的Excel文檔:
- //ole_obj.Application.ActiveWindow.Close()
- //ole_obj.Application.ActiveWorkBook.Close()
- //銷燬對象
- destroy ole_book
- destroy ole_obj
- end if
- messagebox("提示","導出EXCEL成功!")
- else
- return
- end if
PB 數據窗口導出EXCEL報表-個人例子
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.