DTP駆け込み寺

No.20667へ返信

記事投稿フォーム
補助
送信

[ 返信 ]

Re^2: スクリプトをショートカットで実行した際のエラー

(z-)さん、返信ありがとうございます。

> これだけだと判断に苦しむところですが
> エラー文字列と一緒に、何行目でエラーが発生したのか表示されるので参考にしましょう。何も始まらないうちから1行目などでこけている場合は,確かに何かがおかしいってことになります。

エラーを出している行は「activeDocument」を記述している1番最初の行になります。
また、「app.documents[0]」に書き換えてもエラーの内容が後述のものに変わるだけでした。(エラー番号:45、エラー文字列:Object is invalid)

スクリプトに記述している3つの機能自体はショートカットからでもダブルクリックでも上手く動いてくれているのですが、前者の場合にのみ、ドキュメントが閉じられた直後にエラーが出てしまいます。

> 最初に思い当たったのは、そのショートカットが他の処理にも適用されていないか、という可能性なんですが(二重登録できたかどうか記憶が定かでないのですが)。

macOSとIndesignの両方で重複していないことを確認しました。

> 問題のスクリプトのいちばん上に
> alert(decodeURI(app.activeScript.name));
> を追加して、ショートカット実行した直後にスクリプト名がアラート出るか確認、というのをやってみてもらえますか?

スクリプト名がアラートに出ていることを確認しましたが、同時にエラーも出なくなってしまいました。
色々試してみたところ、どうやら一度でもダイアログを表示するとエラーが出なくなるようです。

新たにダイアログを表示することでスクリプト自体は上手く動いてくれることが分かりました。
しかし欲を言いますと、ショートカットキーひとつだけで実行したいのです。
どうか知恵をお貸し下さいますよう、お願い申し上げます。

[20667] GP◆wXSMC49jR. (2021/11/04 Thu 12:13)