Powerbuilder「OLE」を使用してExcelシートから読み書きするサンプル(Excelシートファイルに値を書き込み、Excelがその機能の一部を実行した後に他の値を読み取る必要があります)
質問する
18951 次
1 に答える
3
OLEを介してExcelファイルにアクセスするサンプルを次に示します。
int li_rtn
string ls_range
oleobject lole_excel, lole_workbook, lole_worksheet, lole_range
lole_excel = create oleobject
li_rtn = lole_excel.ConnectToNewObject("excel.application")
if li_rtn <> 0 then
MessageBox( "Error", 'Error running MS Excel api.')
destroy lole_Excel
else
lole_excel.WorkBooks.Open("C:\some_path_to\sample.xls")
lole_workbook = lole_excel.application.workbooks(1)
lole_worksheet = lole_workbook.worksheets(1)
// Set the cell value
lole_worksheet.cells(1,11).value = "Some value" //it is cells(line, column)
//example to work on a range of cells
ls_range = "A1:F"+string(ll_excel_rows)
lole_range = lole_worksheet.Range(ls_range)
lole_range.Select
lole_range.Locked = True
// Save
lole_workbook.save()
// Quit
lole_excel.application.quit()
lole_excel.DisconnectObject()
destroy lole_Excel
end if
値の読み取りと書き込みは、プロパティを介して簡単に実行できworksheet.cells
ます。
唯一の問題は、OLEを介して大量のセルでExcelを駆動するのが遅いことです。
于 2012-06-27T10:45:32.343 に答える