PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
22850 | 06/11/16 10:41:21 | RE(3):PB9.0: oleでExcelを出力した時のエラーについて(質問) By itimura |
22849 | 06/11/15 16:56:44 | RE(2):PB9.0: oleでExcelを出力した時のエラーについて(質問) By 梶 |
22848 | 06/11/14 18:44:21 | RE(1):PB9.0: oleでExcelを出力した時のエラーについて(スクリプト) By itimura |
22847 | 06/11/14 18:42:29 | PB9.0: oleでExcelを出力した時のエラーについて(質問) By itimura |
カテゴリ:PowerBuilderの開発環境
日付:2006年11月14日 18:44 発信者:itimura
題名:RE(1):PB9.0: oleでExcelを出力した時のエラーについて(スクリプト)
// スクリプト
//-- 名前をつけて保存ダイアログ表示
ls_docname = \"C:\\excel\\test\"
if getfilesavename(\"ファイル名をつけて\",ls_docname,ls_name,\"xls\",\"Excelファイル(*.xls),*.xls\") <>
1 then
return -1
end if
//-- OLEObjectのインスタンス作成
loel_xls_app = create OLEObject
//-- Excelとの接続
li_rtn = loel_xls_app.ConnectToNewObject(\"Excel.Application\")
if li_rtn <> 0 then
messagebox(\"エラー\",\"Excelとの接続に失敗しました。戻り値:\" + string(li_rtn))
destroy loel_xls_app
setpointer(Arrow!)
return -1
end if
//-- テンプレートExcelファイルのOPEN
ls_template = \"C:\\template.xls\"
loel_xls_app.Application.Workbooks.Open(ls_template)
//-- Excelシートの参照を解決(パフォーマンスが改善のため)
loel_xls_sub1 = loel_xls_app.Application.ActiveWorkbook.WorkSheets[1]
//-- 項目セット
//- シート アクティブ化
loel_xls_sub1.Activate
//- 最大値 取得
ll_col_max = long(ad_dw.Object.DataWindow.Column.Count)
ll_rowcount = ad_dw.rowcount()
//- 設定 処理[行,列 の順に 設定]
for ll_col = 1 to ll_col_max
for ll_row = 1 to ll_rowcount
ll_row_no = ll_row + 1
loel_xls_sub1.cells[ll_row_no , ll_col] = ad_dw.Object.Data[ll_row , ll_col]
next
next
//-- アクティブなセルを左端に移動
loel_xls_sub1.Cells(1,1).select
//-- 名前をつけてファイル名を保存
loel_xls_app.Application.DisplayAlerts = false
loel_xls_app.Application.ActiveWorkbook.SaveAs(ls_docname)
loel_xls_app.Application.DisplayAlerts = true
//-- Excel終了
loel_xls_app.Application.Quit()
//-- OLEObjectのインスタンスを破棄
loel_xls_app.DisConnectObject()
Destroy loel_xls_app
以上、宜しくお願いします。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS (記載なし)
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.