Date: prev next · Thread: first prev next last
2018 Archives by date, by thread · List index


渡辺です、Ver6.0で発生していた、マクロを使ってCalcシートを非表示モードで開いた場合にClose命令でクラッシュする案件について
Ver6.1でも同様にクラッシュしますので報告します。

当初(5月ごろ)テスト時においては6.1(テスト版)では発生しないという情報をもらっていましたが、リリースバージョンの6.1では
6.0系と同様にCalcがクラッシュしてしまいます。libreofficeが落ちます。

以下の処理はDドライブのDATAフォルダにファイルを作って、そのファイルを非表示jモードで呼び出し、20秒経過後クラッシュするマクロです。

Sub Hidden_test001

'******** 非表示モードで開いたODSファイルをクローズする処理時にLibreOfficeがクラッシュします *******
Dim oSheet As Object
Dim SheetMei as string
Dim oUrl As String
Dim oDoc As Object

'******** 開く予定のODSファイルをフルパスで指定し&でファイル名を繋ぎます ********** Dドライブを指定した例です
oUrl = ConvertToURL("D:\DATA\") & "test02.ods"
'*********************************************************

Dim aArg2(0) As New com.sun.star.beans.PropertyValue

'####### 非表示モード #######
aArg2(0).Name = "Hidden"        '+++++ この行を有効にすると、指定したCalcシートを非表示モードで開きます
++++++
'####### 非表示モード #######

'******* シートをaArg2(0)で指定したモードで別ウィンドウで開きます
aArg2(0).Value = True
oDoc=StarDesktop.loadComponentFromURL(oURL, "_blank", 0, aArg2())

' oDoc=StarDesktop.loadComponentFromURL(oURL, "_blank", 0, "Hidden")

Wait 2000

'Calcシートの0番シートをパラメーターで指定されたシート名に変更します(処理例)
oSheet=oDoc.Sheets(0)            '0番のシートを選択します

SheetMei = "シートHidden_ON2000"
'非表示モードの時はシート名を"シートHidden_ON"に指定します

oSheet.Name= SheetMei          '表示したCalcファイルの0番のシート名を変更します

oDoc.store()
oDoc.close(True)                      '★ブレイクポイントをここにセットしてください
'★上のoDoc.Close(True)の行にブレイクポイントをセット後、マクロを実行し、処理停止状態で20~30秒程度経過後、処理続行した後クラッシュします。

End Sub

-- 
Unsubscribe instructions: E-mail to discuss+unsubscribe@ja.libreoffice.org
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.libreoffice.org/ja/discuss/
Privacy Policy: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.