作成日: 2023/04/10 最終更新日: 2023/06/21
文書種別
不具合
状況
修正済み
詳細
xlsxファイルの拡張子をzipに変更後、解凍して得られる内部ファイル「\xl\charts\chart*.xml」にてチャートの軸ラベルの記述が正しくない場合、そのxlsxファイルをWorkbook.Openメソッドで読み込むと、System.IndexOutOfRangeExceptionが発生します。
■正しくない例
以下のとおり、総数以上のインデックスが軸ラベルの指定に使用されている場合、IndexOutOfRangeExceptionが発生します。
■正しい例
MS Excelで作成したxlsxファイルの場合など、通常は、以下のとおり総数未満のインデックスが軸ラベルの指定に使用されています。
■正しくない例
以下のとおり、総数以上のインデックスが軸ラベルの指定に使用されている場合、IndexOutOfRangeExceptionが発生します。
<c:cat>
<c:strRef>
・・・
<c:strCache>
<c:ptCount val="3"/>
<c:pt idx="0">
<c:v>XXX</c:v>
</c:pt>
<c:pt idx="2">
<c:v>XXX</c:v>
</c:pt>
<c:pt idx="3">
<c:v>XXX</c:v>
</c:pt>
</c:strCache>
</c:strRef>
</c:cat>
■正しい例
MS Excelで作成したxlsxファイルの場合など、通常は、以下のとおり総数未満のインデックスが軸ラベルの指定に使用されています。
<c:cat>
<c:strRef>
・・・
<c:strCache>
<c:ptCount val="3"/>
<c:pt idx="0">
<c:v>XXX</c:v>
</c:pt>
<c:pt idx="1">
<c:v>XXX</c:v>
</c:pt>
<c:pt idx="2">
<c:v>XXX</c:v>
</c:pt>
</c:strCache>
</c:strRef>
</c:cat>
回避方法
この問題はバージョン6.1.1で修正されました。