【Excel】リンクされた図の仕様あれこれ

エクセルテンプレートをもとにエクセルとPDFを連続作成するプログラムを作成しているのですが、
このテンプレートが曲者でして、見開きなんだけど左右に表の行高さが違うという。
当初に受け取ったテンプレートでは行高さを均等割りして、左右の表ごとに列結合を駆使したものだったのですが、
あんまり気持ちいいものでもなかったので、表の本体は印刷外領域において、リンクされた図(Linked picture)で表示することにしました。

ところが、エクセルのリンクされた図には問題があって、その解決に難儀することに。
まぁ、エクセルに印刷品質を求めるのは酷なのかもしれませんが・・・日本では仕方ないw

問題その1
テンプレートにリンクされた図を配置したシートをコピーするとリンクされた図のサイズが変わってしまう

参考
stackoverflow.com


参考サイトではテキストボックス上にリンクされた図を配置する解決が示されていますが、
やり方がよく分からず・・・グラフオブジェクト上に置くことは可能でした。

  1. 適当なグラフを作成してグラフ上のオブジェクトをすべて削除する
  2. リンク図をコピーしてから、グラフオブジェクトを選択した状態でペーストする
  3. リンク図のアドレスがクリアされるので、シート参照のアドレスで書き直す

また、マクロ制御する場合はシートをコピーしてからリンク図を作成しても可能でした。

7/20 追記
どうやらシートをコピーするときのワークシートの表示倍率によって、サイズ変更が発現するようです。
少なくともExcel2010・2016環境では55%でのシートコピー時に発生。
というわけで、表示倍率を変更するだけでよさそうです。

問題その2
リンクされた図を含むシートをグループ選択して印刷/PDF作成すると、シートによってフォントサイズが変わってくる

この現象は私がググった限りでは類似の情報は見られませんでした。
1シート目と2シート目以降で変化したので、テンプレートシートを含めてPDF作成し、テンプレートシートを削除。
テンプレートを含むPDFはiTextSharpを利用してページを削除するという手順に落ち着きました。
ページ単位のPDF削除についてはまた後日記事にて。