バグ?仕様?

C# + EPPlusLink でグラフ付きExcelファイルを生成するということをやってます。出力にはここLink にあるようなデータ数量の変化にも自動で追従する度数分布(Frequency/Histogramとも言う)グラフが含まれています。

が、できたファイルをExcel 2013で開く時は問題ないのに、よく分からないタイミングでグラフ上の線が突如消えたり、「このワークシートの数式に、1つまたは複数の無効な参照が含まれています。」で始まるエラーメッセージが(英語版なのでWe found a problem with one or more formula references in this worksheet)。最初EPPlusで作ったせいかと思ったのですが、一度はExcelで開いたのだから原因はそこじゃないだろうと。

通常はセルの移動や削除で#REFが出てしまったのが原因で、エラーメッセージで検索すれば対処Link がいろいろ見つかるのですが、今回の場合は#REFなどない。

次に調べるところとしては、グラフ。参照範囲(X/Y軸、タイトルなど)に数式で指定していると数式がエラーを出しているので発見が難しくなるらしい。表示の崩れたグラフを右クリック、データ範囲をしらみつぶしに調べたところ、ある名前付き範囲に設定した数式が

開いた直後  =OFFSET('Data'!GC12,2,4,COUNT('Data'!GG14:GG63),1)
エラー後  =OFFSET('Data'!GM24,2,4,COUNT('Data'!GQ26:GQ75),1)

…なぜセルのアドレスが変わってるかな?

エラー後が示しているGM24やGQ26は#NA!で埋まっており、こんなのをFREQUENCY関数の引数に与えたらそりゃエラーだろうな。

セルの指定を$GC$12というように固定形式にするとこのような変化は抑制できるようです。そういえばここLink も固定形式で指定してるな。これって公然の仕様なのでしょうか?

[参考]

— posted by mu at 02:06 pm   commentComment [0]  pingTrackBack [0]

この記事に対する TrackBack URL:

設定によりTB元のページに、こちらの記事への言及(この記事へのリンク)がなければ、TB受付不可となりますのであらかじめご了承下さい。

コメントをどうぞ。 名前(ペンネーム)と画像認証のひらがな4文字は必須で、ウェブサイトURLはオプションです。

ウェブサイト (U):

タグは使えません。http://・・・ は自動的にリンク表示となります

:) :D 8-) ;-) :P :E :o :( (TT) ):T (--) (++!) ?;w) (-o-) (**!) ;v) f(--; :B l_P~ (QQ)

     

[X] [Top ↑]

T: Y: ALL: Online:
ThemeSwitch
  • Basic
Created in 0.8859 sec.
prev
2015.3
next
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31