VBScript

Illustratorに登録されたPDFプリセットを列挙するVBScript

前回の記事で、VBSからIllustratorが操作できることを紹介しましたが、今回はIllustratorに登録されたPDFプリセットを列挙するスクリプトを紹介します。

下記スクリプトはIllustratorが起動済みであることを前提としています。Illustratorの起動からスクリプトに組み込む場合は、下記記事のコードをご参照ください。

Option Explicit

Dim appAi
Dim v, i

Set appAi = Nothing '初期化
On Error Resume Next
Set appAi = GetObject(, "Illustrator.Application")
On Error GoTo 0
If appAi Is Nothing Then
  WScript.Echo "Illustratorを起動した状態でスクリプトを実行してください。"
  Wscript.Quit
End If

'下記でオートメーションエラーが発生する場合は、一度手動でPDFプリセットダイアログを表示してから実行
On Error Resume Next
v = appAi.PDFPresetsList
If Err.Number <> 0 Then
  WScript.Echo "Error:" & Err.Number & vbNewLine & Err.Description
  Wscript.Quit
End If
On Error GoTo 0

'PDFプリセットを列挙
For i = LBound(v) To UBound(v)
  WScript.Echo v(i)
Next

Illustrator.ApplicationオブジェクトのPDFPresetsListプロパティから、PDFプリセットの名前を配列として取得できるのですが、私の環境だと単にIllustratorを起動しただけでは、下図のようにオートメーションエラーが発生しました。

一度手動でPDFプリセットダイアログを表示した後は、意図した通りにPDFプリセットが取得できたのですが、このあたりの挙動がいまいち掴めません。

外部スクリプトによるIllustratorオートメーションを試していると、度々こういった現象が発生します。

私の環境が悪いのか、Illustrator側の仕様かどうかは分かりませんが、「触っていてクセがあるなー」というのが、正直な感想です。

関連記事

  1. Windows関連

    ダウンロードフォルダーのパスを取得するVBScript

    ダウンロードフォルダーのパスを取得する必要があったので、過去に書いた記…

  2. Office関連

    古い形式のWordテンプレートを新しい形式に一括変換するVBScript

    古い形式のWordテンプレート(dot)を新しい形式(dotx,dot…

  3. Windows関連

    OSのバージョン情報をクリップボードにコピーするVBScript

    OSのバージョンやビルド番号をブログの記事内に書くことがあるのですが、…

  4. Office関連

    「2014年12月のWindows Update以降コマンドボタンが使えなくなった」トラブルへのFi…

    当ブログでも「KB2553154の更新プログラムをアンインストールする…

  5. Windows関連

    Lhaplusのバージョンを取得するVBScript

    およそ2年ぶりに圧縮・解凍ソフトの「Lhaplus」がバージョンアップ…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP