2012年10月4日木曜日

◆Excel無しにExcelファイルを作る3

PowerShell: ◆Excel無しにExcelファイルを作る2の続き

なんだかんだ言って、このExcelPackageの使用頻度は非常に高い。
自分で見るだけなら良いのだが、人に見せる場合はExcelでとなるケースが多い。

非常に便利に使えてはいるのだが、品質的には若干怪しい部分も多い。

今回も躓いた部分をメモしておく。

<IPアドレスが苦手>

セルにIPアドレスを設定するケースがあったのだが、出来上がったExcelファイルを開くと、
image

といったエラーメッセージが表示される。

一応「はい」を応答すると開けるようになるだが、これでは何ともいただけない。

色々試してみたのだが、どうも数字と複数のピリオドの組み合わせがダメっぽい。
全くの想像だが、本来数字と複数のピリオドは文字列属性の指定をするべきところ誤って数値属性を指定しているといった感じではなかろうか。

なので、ピリオドと数字以外の文字を付加してあげてExcelPackeageが文字列と判断するよう手助けしてあげれば良い。

元のIPアドレスに影響を与え無いようにするためには、頭にスペースを付加してあげると良さそうだ。
すると、うまい具合にエラーも回避されるしExcelとして開いたときに付加したスペースも消えてくれる。

<複数シートのテンプレートが苦手>

テンプレートに、実際データを表示するシートの他にルックアップテーブル等の為に固定的なシートが必要なケースがあった。

しかし、このテンプレートを使ってExcelファイルを作ると
image

といったエラーになってしまう。
ググってみると以下の情報が見つかり、やっぱりバグでソース修正が必要だとか。
ベトさんの記録簿: ExcelPackage

自分でソースは修正できないので、運用的な回避先を探ってみる。
エラーメッセージからすると要はヌル参照なので、固定シートに対して何もしていないのが良くないのでは?と想像できる。

そこで、意味もなく適当なセルをスペースとかで更新してあげる。

ビンゴ

たまたまかもしれないが良しとする。

 

上記サイトの中で気になる記述があった。
image

ん~、これは使ってみなくては。

1 件のコメント:

  1. 初めまして
    自分の書いた記事が役に立って、うれしいです

    返信削除