Namazu-win32-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
解決しました( Re: 原因不明のハングアップ? ( Re: パスワード付文書のインデックス化 ) )
- From: "Takahiko TAMURA" <takat@xxxxxxxxxxxxxxxx>
- Date: Fri, 29 Dec 2000 17:17:02 +0900
- X-ml-name: namazu-win32-users-ja
- X-mail-count: 00538
田村@島精機製作所です。
佐藤さん:
> getCellsとgetShapesからenumを呼び出してますね。やはりセル範囲の異常
> の可能性が濃厚です。
X-Mail-Count: 00526 で教えていただいたマクロ
> Sub usesize()
> Dim swork As String
> swork = "幅:" & ActiveSheet.UsedRange.Columns.Count & _
> "/高さ:" & ActiveSheet.UsedRange.Rows.Count
> MsgBox swork
> End Sub
を実行してみました。
シートの行数が65000行あまりありました。そこにはなにやら書き損じと
思われる文字がありました。こういうケースもありますし、また、テーブルを
作るためにわざと見えにくい位置へテーブルの内容を書く場合もありますね。
ともあれ、文書からその部分を削除することで正常に動作しました。
次に X-Mail-Count: 00470 で佐藤さんが書かれていたように、oleexcel.pl
を修正しました。
204行目から
> #my $ur = $sheet->{UsedRange};
> my $tmpur = $sheet->{UsedRange};
> my $tmprc = ($tmpur->Rows->Count >100 ? 100 :
$tmpur->Rows->Count);
> my $tmpcc = ($tmpur->Columns->Count >100 ? 100 :
$tmpur->Columns->Count);
> my $ur = $sheet->Range(
> $sheet->Cells($tmpur->Rows->Row, $tmpur->Columns->Column),
> $sheet->Cells($tmpur->Rows( $tmprc )->Row, $tmpur->Columns(
$tmpcc )->Column)
> );
この変更で元の文書には全く手をつけずに、インデックス化が正常進行していま
す。
あとはどれくらいの行数、列数で巨大なセルを持つ文書をハングアップさせずにイン
デックス化
できるか妥協点を探っていきたいと思います。
本当に助かりました。ありがとうございました。
それでは。