2011年1月7日金曜日

rubyでexcelするためのspreadsheetを試すもうまく行かず。



railsで、エクセルテンプレートを読込み、値を貼付けて、エクセルを返す処理を行うことになりました。


調べたところ、windowsでもlinuxでもoffice無しで動く、spreadsheetを試してみました。


しかし、出力したファイルが破損しているのか、開くときにエラーが出てしまいます。


小さな表くらいだと大丈夫だけど、大きめの表などファイルサイズが大きくなると破損するように見えました。


かなり調べてみたけど解らず。


あきらめてwin32oleというのを使おうかなぁ。


追記:


 一旦はあきらめましたが、どうにもあきらめきれずに追加調査してみました。


 地道にうまく行くパターンと行かないパターンを切り分けて調べたんです。


 そしたら少し解ったことが。


 値の設定を行うときにどうも破損するのは解ってたのですが、100%では無い。


 例えば、これを1行だけ設定した場合、破損しますが、



sheet1[8,5] = "125"



 これは破損しません



sheet1[0,0] = ""



 書式とかセル結合の問題かと思いましたが、最初の設定でもこう書けば通りました!



sheet1[0,0] = ""


sheet1[1,0] = ""


sheet1[2,0] = ""


sheet1[3,0] = ""


sheet1[4,0] = ""


sheet1[5,0] = ""


sheet1[6,0] = ""


sheet1[7,0] = ""


sheet1[8,5] = "125"



 どうも、1行目から順に値を設定しないといけないみたいですね(^^;


 いきなり8行目に値を入れようとすると、ファイルが破損します。


 解って良かったのかどうなのか。


 ほんとにこのツール使って良いのか悩みますね><;





0 件のコメント:

コメントを投稿