    Speadsheet::ParseExcel.pm - 0.06

                                                    by 川合孝典 (Hippo2000)

      まだまだの状態のままですが、リリースしちゃってます。

    履歴
      0.06  2000/10/3
             名称の変更
    　　　　　OLE::Storage、Startupを標準では使うように戻しました。
    	 （マクロが入った場合などうまく動かないことがあるので）
    	 Valueをメソッドに変更しました
    	 プロパティ、隠しコマンド多数

      0.02  2000/9/27
             OLE::Storage、Startupなどのモジュールを必要としなくなりました。
             Solarisでも動くように対応しました。（Thank you Mr.Shimamoto!)
             CellsをWorkbookではなくWorksheetの属性に変更しました。

      0.01  2000/9/21
             最初のリリース

    概要
      このモジュールは、まだαバージョンです。

      Microsoft社のExcelファイルをWindows以外のプラットフォームでも情報を取り
      出すようにするモジュールです。

    動作確認
      DOS/V     WindowsNT ver.4.0    Perl5.005
      DOS/V     TurboLinux ver.6.0   Perl5.005
      Sun Sparc Solaris 2.6          Perl5.005
      DOS/V     Vine Linux 2.0       Perl5.005
      Macintosh JPerl、FreeBSDでも動いているというレポートをいただいています

      その他の環境で実行された方は、教えてください。
      動いても動かなくても、ご協力よろしくお願いします。 <(__)>

    簡単な確認(testディレクトリ）
      sampleディレクトリに以下のファイルが入っています：

      sample.pl   ：簡単なテストスクリプト（SpreadSheet::ParseExcel::FmtDefaultを使用）
      sample_j.pl ：簡単なテストスクリプト（SpreadSheet::ParseExcel::FmtJapanを使用、コードを指定して出力）
      res_sample  ：sample.plの実行結果
      res_sample_j：sample_j.plの実行結果(euc)

      dmpEx.pl  : Excelファイルの内容を表示する（SpreadSheet::ParseExcel::FmtDefaultを使用）
      dmpExj.pl : Excelファイルの内容を表示する（SpreadSheet::ParseExcel::FmtJapanを使用）

      簡単にこのモジュールの動きを確認したいだけであれば、dmpExj.plによって
      指定したExcelファイルの内容を表示させることができます。

      ex.
        # perl -I.. dmpExj.pl Excel/Test97.xls euc

        「-I..」は、親ディレクトリにあるSpreadSheet::ParseExcel.pmを利用するために指定します。
        「Excel/Test97.xls」は対象となるファイル名。
        「euc」は漢字を出力するときの文字コードです。euc、sjis、jisなど
        Jcode.pmと同じです。

    インストール
      今回のバージョンでは、OLE::Storage、Startupを必要とします。（逃げる手は作ってあります）
    　SpreadSheet::ParseExcel::FmtJapanを使用する場合、Jcode.pmを必要とします。（他のモジュールを必要としません。）

    　Perlの標準的なインストールになりました。このモジュール自体はPerlのみで作成されているので、コピーするだけでも動きます。

      perl Makefile.PL
      make
      make test
      make install (rootになって）

    使い方
      use strict;
      use SpreadSheet::ParseExcel;
      my $oExcel = new SpreadSheet::ParseExcel;
      my $oBook = $oExcel->Parse('Excel/Test97.xls');

      #または日本語対応では
      use strict;
      use SpreadSheet::ParseExcel;
      use SpreadSheet::ParseExcel::FmtJapan;
      my $oExcel = new SpreadSheet::ParseExcel;
      my $oFmtJ = SpreadSheet::ParseExcel::FmtJapan->new(Code => 'euc'); #sjis、jisなどのコード
      my $oBook = $oExcel->Parse('Excel/Test97.xls', $oFmtJ);

      #情報の取り出し例
      my($iR, $iC, $oWkS, $oWkC);

      print "FILE  :", $oBook->{File} , "\n";
      print "COUNT :", $oBook->{SheetCount} , "\n";
      print "AUTHOR:", $oBook->{Author} , "\n";
      for(my $iSheet=0; $iSheet < $oBook->{SheetCount} ; $iSheet++) {
        $oWkS = $oBook->{Worksheet}[$iSheet];
        print "--------- SHEET:", $oWkS->{Name}, "\n";
        for(my $iR = $oWkS->{MinRow} ;
                defined $oWkS->{MaxRow} && $iR <= $oWkS->{MaxRow} ; $iR++) {
            for(my $iC = $oWkS->{MinCol} ;
                   defined $oWkS->{MaxCol} && $iC <= $oWkS->{MaxCol} ; $iC++) {
                $oWkC = $oWkS->{Cells}[$iR][$iC];
                print "( $iR , $iC ) =>", $oWkC->Value, "\n";
            }
        }
      }

    問題点・バグ
      まだテストもちゃんとできていません。とりあえずは動くでしょう。 <(__)>
      TurboLinux Version 6で作成しているので、他の環境でどうなるのかとても気に
      なります。
      Solarisでは動作確認をしてもらいました。（まだ不具合がありそうですが）

      最大の問題点は「Exce97 デベロッパーズ キット」が手に入っていないので、
      BIFFのフォーマットがわからないことです。(^^;;;;

      コメント、バグレポートをお待ちしています 川合孝典：GCD00051@nifty.ne.jp

    やらなきゃいけないこと：
      なにより「Exce97 デベロッパーズ キット」を手に入れること
        #注文したら出版社で「品切れ」ということで注文が断られてしまって。

      テスト！
      ドキュメントの整備
      CPANに登録(^^;;;
      出力への対応 (^_^) いつになることやら

      だれかまるごと引きついてくれる人はいませんか？(^^)

    謝辞：
      こんな半端な状態で謝辞もあったものではありませんが、以下のプログラム、
      モジュールを参考にさせていただきました。

        xlHtml
        OLE::Storage
            herbert (OLE::Storageに同梱されるツール）
        Spreadsheet::WriteExcel

       Solarisのデバッグは島本武氏がいなければ、成立しませんでした。
    　 埜口晴美さんにはExcel2000のファイルをいただきました。