【Javascript】イラレのバージョンによって動かないコピペするスクリプトについて
お世話になります。
複数のデータにコピペするスクリプトが突然機能しなくなってしまいました。
まずペーストしたいデータは複数開いている状態でスクリプトを使用します。
一つのデータ(コピーしたいもの)を開いてコピーし閉じます。
そして、開いているデータ全てにペーストしていくというものです。
//コピー元のデータ
var initialFolderPath = '~/Documents/フォルダ';
var aFile = File.openDialog("ファイルを選択してください", "*.ai", false, initialFolderPath);
copy();
function copy() {
app.open(aFile); //コピー元データを開く
app.executeMenuCommand("selectall"); //全て選択
app.copy(); //コピー
app.activeDocument.close(SaveOptions.DONOTSAVECHANGES); //コピー元ファイルを閉じる
}
var doc = app.documents; //現在開いてあるペーストしたいデータ
for (j = 0; j < doc.length; j++) {
app.activeDocument = doc[j];
app.executeMenuCommand("pasteInPlace"); //ペースト
}
コピー元のデータは、
レイヤー内にオブジェクトがなくてもレイヤーだけコピペする方法
こちらで教えていただいたことを参考にして、レイヤー内にオブジェクトがないレイヤーもコピペできるようにサブレイヤーを2階層にしています。
イラレ2022 バージョン26.5.3と、イラレ2024 バージョン28.3では動きました。
ただイラレ2023 バージョン27.4では、コピー元のレイヤーを無視してアクティブレイヤーに全てまとめてペーストしているようでした。
スクリプトではなく普通にペーストするとコピー元のレイヤーにペーストしてくれるのですが、スクリプトを介すると上手くできません。
最近まで2023で普通に機能していたものなのですが、何故か突然出来なくなっています・・・。何か問題はありますでしょうか?
