powerbuilder 通過ole對象操縱excel

Ole_object.Workbooks.add//新建一個Excel文件
Ole_object.Workbooks.Open("FileName")//打開一個已存在Excel文件
Ole_object.ActiveWorkBook.Sheets("SheetName").Select//選擇文件中一個工作表
Ole_object.Application.Run("MacroName")//運行宏
Ole_object.Application.Visible=TRUE//Excel文件可見
Ole_object.Application.ScreenUpdating=true//設置可見屬性
②格式設置
Ole_object.ActiveSheet.Columns("A:U").AutoFit//列寬自動調整
Ole_object.ActiveSheet.Columns("A:Z").ColumnWidth=6.75//列寬
Ole_object.ActiveSheet.Rows("1:100").RowHeight=12//行高
Ole_object.Application.StandardFont="ArialNarrow";//設置字體
Ole_object.Application.StandardFontSize="8"//設置字號
Ole_object.ActiveSheet.Font.Size="8"//設置字號
Ole_object.ActiveSheet.Font.Bold=True//粗體
Ole_object.ActiveSheet.Font.Italic=True//斜體
Ole_object.ActiveSheet.Font.Underline=True//下劃線
Ole_object.ActiveSheet.Font.StrikeThrough=True//刪除線
Ole_object.ActiveSheet.HorizontalAlignment=3//水平:4靠右;3居中;2靠左
Ole_object.ActiveSheet.VerticalAlignment=2//垂直:3靠下;2居中;1靠上
Ole_object.ActiveSheet.cells(2,1).font.name=’黑體’//設置字體
Ole_object.ActiveSheet.cells(2,1).font.size=25//設置字體大小
③工作區域操作:
Ole_object.ActiveSheet.Range("A1:Z10").Property=value//設置一個工作區域內的屬性值
Ole_object.ActiveSheet.Range("A1:Z10").Merge//合併單元格
Ole_object.ActiveSheet.Range("A1:Z10").WrapText=False//自動換行禁止
Ole_object.ActiveSheet.Range("A1:Z10").Borders(b_type).Weight=i_val//b_type:1左邊界;2右邊界;3上邊界;4下邊界;5左上傾斜;6

右上傾斜(以上爲對單元格的操作)7左邊界;8上邊界;9下邊界;10右邊界;11內部垂直邊界;12內部水平邊界(以上爲對區域的操

作)//i_val:0無邊界線;然後1,2,3。。。依次邊界線加粗
Ole_object.ActiveSheet.Range("A1:Z10").Borders(b_type).linestyle=1//1與7—細實、2—細虛、4—點虛、9—雙細實線
④賦值操作
Ole_object.ActiveSheet.range("A1:Z10").Cells.value=“姓名”
Ole_object.ActiveSheet.range("A1:Z10").Cells.value=1
Ole_object.ActiveSheet.range("A1:Z10").Cells.value=“2003-01-01”
Ole_object.ActiveSheet.Range("A1:Z10").Cells(1,2).value=“年齡”//區域內一個單元格的賦值
Ole_object.ActiveSheet.Range("A1:Z1").Cells(1,1).value=“SUM(RC[-9]:RC[-1])”

 


 

ls_filename = "C:/alt_report/wf_alt_report.xls"
if FileExists(ls_filename) then FileDelete(ls_filename)
OleObject Loo_Excel
Loo_Excel=create oleobject
if Loo_Excel.ConnectToNewObject("Excel.Application") <> 0 then
messagebox('提示','系統未安裝Excel,無法運行此操作!')
return
end if
Loo_Excel.Application.Workbooks.Add()
Loo_Excel.Application.Workbooks(1).worksheets(1)
Loo_Excel.Application.Visible = True
Loo_Excel.Application.ScreenUpdating = false

//'正在處理表頭......'
Loo_Excel.Range("A1:AB1").Select
Loo_Excel.Selection.MergeCells = True
Loo_Excel.Selection.HorizontalAlignment = 3
Loo_Excel.Selection.VerticalAlignment = 3
Loo_Excel.Selection.Font.Bold = True
Loo_Excel.Selection.Font.Size = 14
Loo_Excel.Selection.RowHeight = 28.50
Loo_Excel.ActiveCell.FormulaR1C1 = dw_3.describe("ls_title"+".text")
///寫標頭
Loo_Excel.application.workbooks(1).worksheets(1).cells(3, 1 ).value = "排單號碼"
// dw_2.describe("po_no"+".name"+"_t.text")
Loo_Excel.application.workbooks(1).worksheets(1).cells(3, 2 ).value = "客人款號"
Loo_Excel.application.workbooks(1).worksheets(1).cells(3, 3 ).value = dw_2.describe("cust_nam_t.text")
///內容
for i=1 to dw_2.rowcount()
Loo_Excel.application.workbooks(1).worksheets(1).cells(3+i, 1).value = string( dw_2.object.po_no[i] )
next

Loo_Excel.application.ActiveWorkbook.SaveAs(ls_filename)
Loo_Excel.Application.ScreenUpdating = True
Loo_Excel.DisconnectObject()  

 
發佈了55 篇原創文章 · 獲贊 1 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章