- ベストアンサー
【Spreadsheet_Excel_Writer】の【repeatRows】について
Spreadsheet_Excel_Writerを使ってクライアントにデータをエクセルファイルで ダウンロードさせたいと思っているのですが【repeatRows】の設置が思うようにできません。 以下のようにするときちんと繰り返し印刷されるのですが出来上がったファイルが サーバー側に保存されてしまいます。 *********************************************************** require_once 'Spreadsheet/Excel/Writer.php'; $workbook = new Spreadsheet_Excel_Writer('test.xls'); $worksheet =& $workbook->addWorkSheet(); $worksheet->write(0,0,"ヘッダ"); $worksheet->repeatRows(0); *********************************************************** 以下のようにすると繰り返し印刷されないのですがクライアント側にダウンロードされます。 *********************************************************** require_once 'Spreadsheet/Excel/Writer.php'; $workbook = new Spreadsheet_Excel_Writer(); $worksheet =& $workbook->addWorkSheet(); $workbook->send('test.xls'); $worksheet->write(0,0,"ヘッダ"); $worksheet->repeatRows(0); *********************************************************** 検索で調べましたがわかりませんでした。 【repeatRows】が設定され、クライアント側にダウンロードされるにはどこを修正すればよろしいでしょうか? PHPのバージョンは 4.3.8 です。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
お礼
解決しました。 エクセルでダウンロードするとき、ダイアログに【開く】と【保存】があるのですがいきなり【開く】にすると【repeatRows】だけ反映されないようです。 【保存】してから開くと反映されました。 yambejpさんにアドバイスいただいた、 >ヘッダを打ち消すような処理がはいっている可能性もないとはいえません ですが、別のところ(setHPagebreaks)の設定で役立たせていただきました(^^ お返事が遅くなって申し訳ありませんでした。 ありがとうございました!!
補足
>っというか、わたしの書いたソースで問題なく印刷ヘッダの印刷は >されるはずです。おためしいただいていますか? 試しましたがだめでした。 >元ソースをどのくらい省略したかは存じませんが、省略した部分に >ヘッダを打ち消すような処理がはいっている可能性もないとはいえません なるほど! 確認してみます! ありがとうございます!