* エクセルのファイルを開くのに時間がかかる [#t444c684]
|RIGHT:|LEFT:|c
|~ページ|[[OpenOffice.org FAQの登録ページ]]|
|~投稿者|marki|
|~分類|#listbox3(Q&A,faq03,class)|
|~優先順位|#listbox3(低,faq03,priority)|
|~状態|#listbox3(完了,faq03,state)|
|~カテゴリー|#listbox3(Calc 表計算,faq03,category)|
|~投稿日|2010-05-13 22:47:58 (木)|
|~OS|ubuntu,XP|
|~依存するページ||
|~バージョン|#listbox3(2.4,faq03,version)|

** メッセージ [#w1c271ca]
|LEFT:|c
|回答ページでは行末に「~」を付加する必要はありません|
別の投稿にコメントしたのですが新たに投稿いたします。

エクセルのファイルを開くにの時間がかかる、
場合によっては開かないで無応答になります。
対象になるファイルにフォームで作った、
コンボボックスやリストボックスがあると時間がかかるようです。

フォームを読み込まずにファイルを開く方法などがありましたら、
教えていただけると助かります。

*サンプルのエクセルファイルを添付してみます。

----
***添付ファイルは何秒で開きますか [#iee608d5]
>M.Kamataki (2010-05-14 10:43:46 (金))~
~
添付の Book1.xls ファイルをOpenOffice.orgの2.4.2と3.2で開いてみました。~
~
結果は2.4.2が30秒くらい、3.2が40秒くらいでした(起動後のOpenOffice.orgからの読み込み時間)。わたしの環境は、Windows XP SP2/Celeron 2.66GHz/1GB RAMです。なお、検証時のアプリケーションは、エクスプローラ5画面とOpenOffice.orgだけでした。今の環境では、Excelファイルは早いもので10秒くらいで開きますから、確かに遅くなりますね。~
~
markiさんのところでは、何秒かかりますでしょうか。~
~
なお、わたしはアンチウィルスソフトとして、avast!を使っていますが、今週最新版にアップデートしました。たぶん、アップデート前だったらもっと遅かったと思います。それ以前は、すべてのアプリケーションの動作があまりにも遅くなり、原因がavast!と判断し、アップデートしたところ、OSをインストールした直後のようにパフォーマンスが良くなりました。4月中旬に、Ver.4から5にアップデートしたのですが、その時点から急激にOS全体のパフォーマンスが落ちました。~

//
***XPsp2とUbuntu8.04で開いてみました [#gca1973c]
>marki (2010-05-14 14:43:10 (金))~
~
当方での所要時間を報告致します。~
~
1、WindowsXP sp2の時~
CPU:Athron5200+ 2.6GHz~
メモリ:2G~
バージョン:3.2~
上記環境の時およそ20秒程度~
2、Ubuntu8.04の時~
CPU:Pentium4 E5200 2.5GHz~
メモリ:1G~
バージョン:2.4.1~
上記環境の時およそ30秒程度~
~
*両環境ともアンチウィルスは動作停止状態にて計測致しました。~
~
添付したファイルはコンボボックスが4つですが、~
20程配置したエクセルのファイルを開こうとしたときは~
さらに時間がかかります。~
場合によっては無応答のまま・・・・~
~
取り急ぎ報告致します。~

//
***問題は… [#d3ae22e0]
>M.Kamataki (2010-05-14 16:55:25 (金))~
~
サンプルファイルを検証してみると、Sheet1から他のシートに切り替え、再びSheet1に戻ろうとすると、他のシートの切り替えがスムーズなのに対してモッサリと遅いですね。~
~
これは、faq/5/12「チェックボックスを多用するとシートの切り替えが遅い」で報告された問題と似ていると思います。つまり、問題は、Excelファイルの読み込みの前に、Calcのフォーム上のコントロールの扱いをどうにかしてもらわないと直らないと思います。試しに、サンプルのExcelファイルをCalcファイルとして保存したところ、余計にファイル読み込みが遅くなりました。~
~
この問題を指摘したのが、faq/5/12で紹介したIssue #41164なんですが、この2月に「無効」にされてしまっています。~
~
今回のサンプルをIssue #41164に添付して、Issueを再オープンしてもらうのが良いような気がしてきました。~

//
***検証による推測ですが [#v38955aa]
>ike@九州 (2010-05-15 08:22:19 (土))~
~
リストボックスを一個に絞っても読み込みに時間が掛かりますね~
しかもリストボックスを操作しているとフリーズ状態になりました。~
~
で、弄っていたら原因と思われる部分~
Excel でのソースセル範囲の指定~
Sheet3!$A:$A~
~
Calc でのソースセル範囲への変換は~
Sheet3.A1:A65536~
~
この A1:A65536 の範囲変換が原因のようで~
(配列処理の不具合でしょうか?)~
Excel 側で範囲を実範囲~
Sheet3!$A$1:$A$17 のように変更したファイルは全く問題ありませんでした。~
~
現状、Excel と Calc の併用の場合は~
関数を含む色々な箇所での範囲指定で $A:$A のような記述を行わないのがトラブル回避術だと思います~

//
***読み込み早くなりました [#k00c30ce]
>marki (2010-05-15 18:47:46 (土))~
~
ike@九州樣の情報どおり範囲の指定を変えると変更すると~
読み込みは早くなりました。~
ソースセルの範囲を絞ったものだと、~
普通にファイルを開くのと変わらなくなりました。~
今後、Excelで表を作る際はソースセルの範囲指定を気をつけて作ることにします。~
~
しかしながら、当方不具合の当てはまるファイルが300以上ありまして・・・~
一つ一つ直していくのはあまりに時間がかかりすぎます。~
~
解決策として先日発見したものに~
Ubuntu(linux)環境でCUIになりますが、Gnumeric(表計算ソフト)に付属する、~
ssconvertを使う方法は見つけました。~
(GnumericはWin版もあるようですが、コンバートソフトがついてくるかは未検証)~
~
上記変換ソフトでExcel形式からExcel形式に変換します。~
そうすると、フォームオブジェクトはすべて削除されてしまいますが~
Calcですんなり開けるようになります。~
(Calc形式に変換するとレイアウトがめちゃくちゃになりました)~
~
いずれにしても300以上のファイルを変換とか修正はかなり大変そうです。~
~
M.KamatakiさんのおっしゃるIssueの再オープンという方法も勉強してみます。~
~
皆様貴重な情報を有難うございました。~

//
***いったん完了にします [#g71ff530]
>M.Kamataki (2010-05-17 15:23:08 (月))~
~
回避方法がわかりましたので、いったん完了にしておきます。ike@九州さん、ありがとうございます。~

//
#article