PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
23851 | 12/02/21 15:56:51 | RE(3):PB10.0: OLEオブジェクト(EXCELシート)の扱い By NSCS |
23848 | 12/02/20 17:54:18 | RE(2):PB10.0: OLEオブジェクト(EXCELシート)の扱い By NSCS |
23846 | 12/02/10 18:39:15 | RE(1):PB10.0: OLEオブジェクト(EXCELシート)の扱い By ace |
23843 | 12/01/26 15:13:13 | PB10.0: OLEオブジェクト(EXCELシート)の扱い By NSCS |
カテゴリ:PowerBuilderの開発環境
日付:2012年02月20日 17:54 発信者:NSCS
題名:RE(2):PB10.0: OLEオブジェクト(EXCELシート)の扱い
aceさん、こんにちは。
たいぶ前に助言頂いたのに返信が遅くなり申し訳ありません。
ご教授いただいた方法を試してみましたが、結果はNGでした。
ole_1.object.Application.ActiveWorkbook.Close() を
li_ret = ole_1.clear() の前に入れてみましたが、
PowerBuilder アプリケーションの実行エラー(R0002)
アプリケーションは中断されました。
エラー: Nullオブジェクトの参照が行われました 関数
fw____________ の234行目(w________のオブジェクト)
234行目というのが ole_1.object.Application.ActiveWorkbook.Close() の行です。
しかし「VBAのメソッドを使ったらどうなりますか?」というのはヒントになりました。
引き続きトライしてみます。
※上記アプリケーション実行エラーの要因とかヒントがございましたらお願い致します。
>NSCSさん、こんばんは。
>ole_1のすぐ下のメソッドはPowerBuilderのメソッドになるので
>
>
>li_ret = ole_1.clear()
>をする前に、EXCELのVBAのメソッドを使ったらどうなりますか?
>例えば
>ole_1.object.Application.ActiveWorkbook.Close()
>
>こののちに
>li_ret = ole_1.clear()
>ではいかがです?
>
>
>
>>OLEオブジェクトに実体のあるEXCELファイル(シート)をオープンした後、そのEXCELファイルがDELETEでき
ま
>せ
>>ん。
>>DELETEするにはどうすればいいか何方かご教授ください。
>>
>>実体のあるEXCELファイル(シート)=ストレージファイルではない。
>>
>>
>>試みた方法
>>is_filename = \"D:\\EXCEL-FILE.xls\"
>>li_ret = ole_1.open(is_filename)
>> ?
>>li_ret = ole_1.clear()
>>FileDelete(is_filename)
>>
>>
>>* ? ole_1.openしたのちはEXCELシート内にあるデータは取りだし処理できています。
>>* ole_1.closeはできない。(CLOSEというOLEControl関数がない)
>>* FileDeleteの返却値はFalseになります。
>>* PowerBuilderのEXEが終了しないとオープンしたEXCELファイルは解放されない感じです。
>> →EXE終了後はDELETE可能。
>>
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows XP
DBMS Oracle Net 10
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle10G
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.