式では不透明度を0にしてレイヤーを隠し、スクリプトではビデオスイッチを切り替えます。
チェックONを非表示にする先行修正の向きを維持します。
最終調査日:2026年10月3日。
式の数値と対象の切り分けをローカルで確認しましたが、今回AE本体での再生・音声出力・Undoは確認していません。
同じコンポに非表示のチェックを用意する
ヌルレイヤーを作り、名前を「表示制御」にします。
「エクスプレッション制御」からチェックボックス制御を追加し、エフェクト名を「非表示」にします。
隠したいレイヤーの不透明度へ次の式を貼ります。
式を開く操作はストップウォッチのAltクリック(MacはOptionクリック)です。
(thisComp.layer("表示制御").effect("非表示")(1).value == 1) ? 0 : value;
| 入力・条件 | 期待する結果 | 確認点 |
|---|---|---|
| 非表示のチェックON | 不透明度0 | 非表示 |
| チェックOFF/元の不透明度60 | 60 | 100へ上書きしない |
| 名前が違う・同名が複数 | 名前と参照先を確認 | 表示制御・非表示は各1つ |
別のコンポのチェックを参照する
制御コンポというコンポ内へ表示制御と非表示を用意した場合は、隠したいレイヤーの不透明度へ次を貼ります。
(comp("制御コンポ").layer("表示制御").effect("非表示")(1).value == 1) ? 0 : value;
数値プロパティ1はチェックボックス制御の中のチェックを参照します。
別種のエフェクトへ番号1を流用せず、名前が違う場合はピックウィップで実際の参照先を確認します。
選択レイヤーのビデオスイッチを切り替える
練習プロジェクトを別名で保存し、対象コンポのタイムラインを開きます。
平面またはテキスト2枚を選択し、選択前のビデオスイッチの状態を控えます。
次のコードをUTF-8の.jsxファイルとして保存し、AEの「ファイル」→「スクリプト」→「スクリプトファイルを実行」から実行します。
これは不透明度へ貼る式ではありません。
(function () {
var enabled = false; // false:非表示、true:表示
var comp = app.project ? app.project.activeItem : null;
if (!(comp instanceof CompItem)) { alert("対象コンポを開いてください。"); return; }
var layers = comp.selectedLayers;
if (!layers.length || layers.length > 100) { alert("1〜100レイヤーを選択してください。"); return; }
for (var i = 0; i < layers.length; i++) {
if (layers[i].locked) { alert("ロックされたレイヤーがあります。変更しません。"); return; }
}
var began = false;
try {
app.beginUndoGroup("CGM selected visibility"); began = true;
for (var j = 0; j < layers.length; j++) layers[j].enabled = enabled;
} catch (e) {
alert("途中で停止しました。変更が一部残った場合は取り消してください。\n" + String(e));
} finally {
if (began) app.endUndoGroup();
}
}());
enabled=falseで選択レイヤーを非表示、trueで表示します。
コンポ以外がアクティブ、選択0枚、100枚を超える選択、ロックされたレイヤーを含む場合は変更せず停止します。
旧コードのapp.project.item(1)は、プロジェクト内の項目番号1を参照します。
項目にはフォルダーや素材も含まれるため、「1つ目のコンポ」を指定する方法には使いません。
このスクリプトはアクティブなコンポの選択レイヤーだけを対象にします。
選択していないレイヤーやプロジェクト内の別コンポは変更しません。
ビデオスイッチの切替は音声スイッチの切替と別です。
不透明度0やビデオOFFだけで音声も止まるとは考えず、音声は音声スイッチやオーディオレベルで操作します。
エラー・切り分け・戻し方
式の参照エラーならコンポ名、レイヤー名、エフェクト名と同名の重複を確認します。
式を一時停止する場合は、有効化スイッチをオフにします。
スクリプトの警告は対象選択やロック状態を確認してから再実行します。
変更途中のエラーでは一部だけ切り替わる可能性があるため、状態を確認し「編集」→「取り消し」で戻します。
WindowsではCtrl+Z、MacではCommand+Zで取り消します。
trueを指定した再実行は全選択を表示する操作で、元のON/OFFが混在していた状態へ戻す操作ではありません。
取り消し履歴がない場合は控えたスイッチ状態を個別に戻すか、保存した練習プロジェクトを開き直します。
式側は無効にして、元の不透明度とキーを使います。
レイヤーを選んでEを2回押すと式のあるプロパティを探せます。
式のある場所と停止・削除の違いは、関連する「式の削除と停止」の記事で確認できます。
Project.activeItem・CompItem.selectedLayers・PropertyBase.enabledはコミュニティ維持のAPIガイドも照合しています。
関連する操作
| やりたいこと | 最初に読む記事 |
|---|---|
| 映像の透明度を前後で変える | 不透明度のフェード |
| 音量を前後で下げる | オーディオレベルのフェード |
| 一定間隔で見せる・隠す | 点滅の式 |
| 式を探す・一時停止する | 式の削除と停止 |
参照資料
Adobeのエクスプレッション言語資料を参照しています。
旧版の参考コード・関連記事
既存の参考コードは旧版の可能性があるため、今回の手順では本文の式を使います。




