[[20220328205442]] 『ブックをpdfに変換するコードについて』(PDF) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ブックをpdfに変換するコードについて』(PDF)

ブックをpdfに変換するコードを書く際に
ExportFormat:=17
と指定しますが、この17って何の意味があるんでしょうか。

< 使用 Excel:unknown、使用 OS:unknown >


 ネットより抜粋
  ・変換後のフォーマットExportFormatに『17』を指定しています。『17』はPDFになります。
 だそうです。
(nm) 2022/03/28(月) 21:25

それはExcelじゃなくて、
WordのDocument.ExportAsFixedFormat メソッドや
Document.ExportAsFixedFormat2 メソッド
で使うものでしょう。

いずれにしても定数を対応づけたものであって、17そのものに特に意味はありません
通常は、
ExportFormat:=wdExportFormatPDF
のように書いて、
できるだけ17のような"マジックナンバー"を使わないほうがよいとされています。
このほうが幾分か意味が採りやすいわけです。
(γ) 2022/03/28(月) 21:43


 たぶんEXCELのVBA上からWORDを操作しているためWORDのVBAで定義されている
 wdExportFormatPDF 
 が使えずその実態の17となっているのでは?
(ねむねむ) 2022/03/28(月) 23:00

なるほど、そうかもしれません。

(1)その場合は、Wordを参照設定すれば、Word定数をそのまま使えます。

(2)参照設定を避けるなら、
wdExportFormatPDFという変数を作成して、
wdExportFormatPDF = 17
としておき、
ExportFormat:=wdExportFormatPDF
とするのが、マジックナンバーを避ける作法でしょうか。
(γ) 2022/03/28(月) 23:11


 質問者さんから状況をもう少し説明してもらいたいですね。

 1. ブックをPDFにしたい、ということとWordがどう関係するのか。
 2. 全体のコードを示すことはできませんか?
 3. 現状はどうなっているのでしょうか。
    エラーで止まっているのか、
    いや成功裏に終わっているのだが、単に、確認、後学のためということなのか。
 等々
(γ) 2022/03/28(月) 23:30

 >それはExcelじゃなくて、
 それは分かっています。「この17って何の意味」を伝えるためでした。
(nm) 2022/03/29(火) 09:35

誤解を招きましたか。失礼しました。
もちろん質問者に向かって書いています。
ブックをPDFにする話のなかでWordに関するメソッドで使用する定数引数の話をされていたので。
(γ) 2022/03/29(火) 10:14

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.