2015年11月7日土曜日

Illustratorの変数(xml)を自動生成するエクセルファイル

Illustratorの変数パネルでは、カード型データベースの様に文字列を動的に変更できる機能があります。

ハガキや名刺、住所の宛名印刷など、WordとExcelでの差し込み印刷みたいな事ができますが、リストのxmlファイルを作るのが面倒だったので、簡単に生成できるエクセルファイル(xlsm)を作りました。
思ったより便利なのが出来たので、お使いいただけたら幸いです。

ダウンロード

変更履歴
  • Ver.3(2016/2/11)
    特定の記号を使うと、Illustratorで読み込み時にエラーになっていたのを修正。
    対応記号:[&]アンパサンド、[<]小なり、[>]大なり。
  • Ver.2(2015/11/9)
    IllustratorサンプルファイルをCCから下位バージョン保存したCS6、CS4、CS、v10を追加。
    生成されるxmlの改行コードを、LFからCRLFに変更。
  • Ver.1(2015/11/7)
    公開

使用条件
  • Windows専用
  • xlsmファイルなので、Excel2007以降で使用できると思います。
  • VBAで作っているので、マクロを有効にしてください。
    ※動作確認はIllustrator CC、CS6のみ。

使用方法
  1. エクセルを開いて、「リスト」シートにデータを作る
    下記にしたがってリストを書き換えます。
    1行目は変数名、B1より右側を任意で書き換える。
    A列はデータセット名、A2より下を任意で書き換える。
    ※書き換える文字は、特に制限はありません、英数字、日本語、改行もOK。
    ※行数、列数の制限はないので自由に項目数を増やせる。
  2. 「XML生成」ボタンを押す
    「変数ライブラリ」シートに書き出す予定のテキストが生成されます。
  3. 「ファイルを保存」ボタンを押す
    エクセルファイルと同フォルダ内に「変数ライブラリ.xml」が保存されます。
  4. 保存されたxmlファイルをIllustratorで読み込む
    xmlファイルをIllustratorの変数パネルのオプションから「変数ライブラリの読み込み」をクリックして読み込みます。
シート名を変更しても動作します。
保存されるXMLのファイル名を変えたい場合は、シート名を変更してください。
シート名「変数ライブラリ」→保存されるファイル名「変数ライブラリ.xml」
シート名を「住所録」に変更→保存されるファイル名「住所録.xml」
となります。
※Illustratorファイルの変数名と、エクセルの1行目の項目(サンプルファイルでは「ID」、「名前」、「郵便番号1」などの行)が合っていないと、読み込み時に変数が見つからず、動作がおかしくなります。
※1つの項目で複数行にしたい場合は、エクセルのセル内で改行してください。Alt+Enter。
使用できる記号(確認した記号)
  • [&]アンパサンド
  • [<]小なり
  • [>]大なり
  • ["]ダブルクォーテーション
  • [']シングルクォーテーション
  • [`]アポストロフィー


不具合報告などありましたら、コメントにご報告いただけたら幸いです。


参考にさせていただいたサイト様

7 件のコメント:

  1. The macro in xls looks nice but there is no Predefined entities in XML for character " & ' < >. The variable xml for illustrator needs to be manual modified for faulty entities. I see that only single line is supported. Will there be a paragraph or multiline support in the future?

    返信削除
  2. >Hans Boon

    Thank you for your comment

    Because I do not understand English well, you might understand is wrong.

    In Ver.3, now supports the following symbols.
    [&] Ampersand, [<] less-than sign, [>] Greater-than sign

    [ '] Single quote, [ "] double quotes, [`] apostrophe originally okay.
    Paragraph is a new line in Excel. Alt + Enter.

    Comment if there is I want you to corresponding symbol.

    返信削除
  3. このような便利なものを公開いただきありがとうございます。こちらのデータを編集して使いたいと思っているのですが、そのままの状態でもXML生成ボタンを押すと 'Can't find project or library' と出てきてしまうのですが、何故かわかりますでしょうか。Mac OSX El Capitan OS言語は英語、Excelのバージョンは15.11.2です。もしかしたら日本語をファイル名に使わなければいけるのかも?などと思っているのですがなにせプログラミングの知識がないので…ご教示いただけると幸いです。

    返信削除
    返信
    1. >min mooba さん

      はじめまして、よしおです。
      興味を持っていただいて大変光栄です。
      私もプログラマーではないですし、Macも持っていませんのどれだけ力になれるかわかりませんが、出来ればなんとかしたいと思っています。

      私の環境(Windows7、Excel2010)ではエラーが出ませんので、多分OSがMacか、英語版なのが原因だと思います。
      といいますのも、私が作ったエクセルファイルがWindowsで日本語環境を想定して作っていたからです。

      少しだけ手直ししたエクセルファイルを仮アップしたので、よければ試してもらえますか?
      もしかすると正常に動くかもしれません。
      また、テストファイルでもエラーが出る場合は、お手数ですがエラー番号とメッセージをお知らせくださいませんか?
      原因を追究できるかもしれませんので。

      ○テストファイル
      https://sites.google.com/site/yoshioakz/home/file/illustratorxml_test20160619.zip?attredirects=0&d=1

      よろしくお願いします。

      削除
    2. よしおさん

      わざわざ有り難うございます!こちらの環境でテストして、再度ご連絡させていただきます。少々お待ちくださいませ。

      削除
    3. お待たせしました。こちらの環境で試してみたところ、やはりエラーが出ましたので、どうもMac OSのようです。言語切替ができるので日英両方試してみましたが、どちらも同じ内容でした。下記がエラーメッセージになります。ご確認ください。

      OSX El Capitan
      日本語環境でのエラーメッセージ:

      コンパイル エラーです。:

      プロジェクトまたはライブラリが見つかりません。
      (Module1 43:19)

      英語環境でのエラーメッセージ:

      Compile error:

      Can't find project or library
      (Module1 43:19)

      デバッグはしていただけるとありがたいはありがたいですが、大変な労力になるでしょうし、コピペでとりあえずしのげているので、どうしても必要というわけではございません。少しでもお役に立てば。

      削除
    4. >min mooba さん

      テストしていただき、ありがとうございました。
      min mooba さんのおっしゃるようにMacが原因のようです。

      Windowsで作ったエクセルファイルのMacでのコンパイルエラーを調べてみましたが、VBA(マクロ)はWindowsとMacで書き方に違いが結構あるみたいで、それが原因のように思います。
      解決するにはMacでのデバッグが必要みたいで、Macは持っていませんので残念ながら解決できそうにありません。

      そのうちMacを買う機会があれば、Macでも使えるようにバージョンアップしようかと思います。
      現時点ではWindows専用となりますが、使用する機会がありましたら、使ってやってください。

      今回は力になれなくてすいませんでした。
      また、勉強する機会をいただきありがとうございました。

      削除