HHeLiBeXの日記 正道編

日々の記憶の記録とメモ‥

複数の環境でExcelからPDFファイルを出力するとズレが生じる

ものすごく久しぶりになってしまい、気付けば2019年もあと2か月を切ってしまいました。
まぁ、とりあえず生きています。

さて、ある時からずーっと、Excelファイルで帳票を作ってPDFファイルに変換(「名前を付けて保存」でPDFを選択)すると、環境によってズレが生じてしまうという問題に悩まされてきました。 普段のオフィスでの出力と、本社オフィスに行ったときの出力がズレてしまうという感じですね。
原因もよく分からず、過去の出力とのズレをちまちまと調整しながらしのいでいました。

Microsoftのサイトでは、以下のようなページがあります。

『適用対象: Microsoft Office Excel 2007Microsoft Office Excel 2003』ということなので、古い情報ではあるのですが、私が悩んできた、現時点のExcel 2016でも同じようでした。

『簡単に考えられる解決策は、環境をまったく同じにすることです。』とあるのですが、同じPCで出力してるんだよ!と流してきました。

ところがある日、何がきっかけだったかは完全に忘れましたが、普段のオフィスで出力したときにズレたんですね、きっと。 そこで上記のページのことを思い出し、読み直してみると、「プリンタドライバ」とあります。
ここからはWindows 10をベースとした話になりますが、私がPDFファイルへの変換を行った環境が3パターンあったんですね。

  1. 普段のオフィスで、個人PCから仕事PCにリモートデスクトップ接続で入って作業する
  2. 本社オフィスで、仕事PCを直接操作して作業する
  3. 普段のオフィスで、仕事PCを直接操作して作業する

そこではたと気付いてプリンタの設定を開いてみました。

  • [スタート]メニュー⇒[設定]⇒[デバイス]⇒[プリンターとスキャナー]

すると、下の方に「Windows で通常使うプリンターを管理する」というチェックボックスがあり、それがオンになっています。 試しに、上記のパターンでExcel等で印刷を試してみると・・・

  • リモートデスクトップで入ると、「Canon xxxx (リダイレクト2)」が既定になっている
  • 普段のオフィスで直接操作すると、「Canon xxxx」が既定になっている
  • 本社オフィスに行くと、「Canon yyyy」が既定になっている

という感じで、要はプリンタドライバが違うんですね。

ということで、試しに「Windows で通常使うプリンターを管理する」のチェックを外し、手動で既定のプリンタを選択してみます。 操作は、

  • 対象のプリンタをクリックして[管理]⇒[既定として設定する]

です。

これでExcelからPDFファイル保存をすると、既定のプリンタをどれにするかによって見事にズレが生じました。
過去に出力したときに使ったはずのプリンタドライバを既定に設定して、異なる環境で再出力してみると、見事に一致!PDFファイルとして保存するときには「既定のプリンター」を使っているんですね。
ようやく大きな原因となっているものが特定できました。

・・・長かった orz・・・

でも、ちょっと待ってくださいよ。作業を社内で共有できるようにと、ExcelからPDF出力する際には必ず本社オフィスのプリンタを既定にしてから行うようにしたとしても、そのプリンタが入れ替わっちゃったら・・・

まだ悩みは尽きないようです。別の方法も模索しないとダメかなぁ・・・