PHPからExcel2010で作成したファイルを編集しようとしています。


これまでもPHPExcelを使用して
①既存のExcelテンプレートを開く
②必要データをセット
③別名で保存して閉じる(orダウンロードさせる)
というようなことはやってきましが、これまではExcel2003などで作成されたファイルに
対して編集を行ってきたので出来ていました。

今回、既に用意されたExcelテンプレートの社内文書があり、これがExcel2010で作られています。
「.xls」で保存されているので、ここまでは問題ないと思うのですが、チェックボックスなどが設置されています。

これに対して、これまでと同じやり方で編集・保存をしてみたところ、チェックボックスがすべて消えてしまいます。
(チェックボックスは後で人間が手動入力する部分なのでシステムからは何も操作しない部分です)

おそらくExcel2010で作られたチェックボックスの部分(2003などのようにくぼんで見えるタイプではなくて、平面的なやつ)にPHPExcelが対応できてないのかなと予想しているのですが、何か対応策をご存じありませんか?

または、代替案がありましたら教えてください。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2013/02/05 10:01:36
  • 終了:2013/02/05 14:24:56

ベストアンサー

id:taknt No.1

きゃづみぃ回答回数13537ベストアンサー獲得回数11982013/02/05 10:04:19

ポイント100pt

Excelのファイルを開いたときに チェックボックスがなかったら それをつけるような マクロを取り入れてみたらいかがでしょうか?

id:kon39392

ありがとうございます。
チェックボックスの数が多いので、座標決めが大変かもしれませんが
一番近道かもしれませんね。

参考になりました。

2013/02/05 14:24:45

その他の回答(0件)

id:taknt No.1

きゃづみぃ回答回数13537ベストアンサー獲得回数11982013/02/05 10:04:19ここでベストアンサー

ポイント100pt

Excelのファイルを開いたときに チェックボックスがなかったら それをつけるような マクロを取り入れてみたらいかがでしょうか?

id:kon39392

ありがとうございます。
チェックボックスの数が多いので、座標決めが大変かもしれませんが
一番近道かもしれませんね。

参考になりました。

2013/02/05 14:24:45
id:kon39392

ちなみに質問にはxls形式のエクセルファイルを「PHPExcel_Reader_Excel5()」で
編集・保存した場合の現象を書いています。

ちなみにダメもとで
$objReader=new PHPExcel_Reader_Excel5();

$objReader=new PHPExcel_Reader_Excel2007();
と変えてみたところ
ZipArchive::getFromName()[siparchive.getfromname]:Invalid or unitialized Zip object
というエラーが出て、正常終了しません。

自分なりに検索かけてみましたが、情報が少ないため、ここで質問させていただきました。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません