home

/

media

/

自動化

自動化

2026年2月28日

郷将輝

n8nのIF/Switch/Mergeノード徹底解説|条件分岐をマスターしよう

n8nのIF/Switch/Mergeノードの使い方と実践パターンを徹底解説。条件分岐をマスターしましょう。

#DX

#workflow

#automation

#n8n

n8nのIF/Switch/Mergeノード徹底解説|条件分岐をマスターしよう

導入

自動化ワークフローを構築していると、必ずと言っていいほど「もし〇〇だったらAの処理、△△だったらBの処理をしたい」という場面に遭遇します。例えば、「問い合わせの種類が『製品に関する質問』なら営業担当へ、『不具合報告』ならサポート担当へ通知を振り分ける」といったケースです。

このような「条件に応じた処理の分岐」は、ワークフローに知能を与え、より柔軟で実用的なものにするための根幹的な機能です。n8nでは、この条件分岐を驚くほど直感的に、そして強力に実現するための3つのコアノードが用意されています。

  • IFノード: 最も基本的な「Yes / No」の二者択一を行う。
  • Switchノード: 複数の条件に応じて、処理を多方面に分岐させる。
  • Mergeノード: 分岐した処理を、再び一つの流れに合流させる。

この記事では、これら3つのノードの基本的な使い方から、それらを組み合わせた実践的なパターンまでを徹底的に解説します。これらのノードをマスターすれば、あなたのワークフローは単なる一本道を突き進むだけの処理から、状況に応じて最適なルートを選択できる、洗練された自動化システムへと進化するでしょう。

1. IFノード:基本の二者択一

IFノードは、設定した1つの条件が「真(True)」か「偽(False)」かを判定し、処理の流れを2つに分岐させます。プログラミングにおけるif...else構文に相当します。

使い方

  1. IFノードを追加し、「Add Condition」をクリックします。
  2. 「Value 1」に比較したい値を設定します。多くの場合、前のノードから受け取ったデータをExpression(例:{{ $json.body.status }})で指定します。
  3. 「Operation」で比較方法を選択します。Equal(等しい)、Not Equal(等しくない)、Contains(含む)、Larger Than(より大きい)など、多彩な比較が可能です。
  4. 「Value 2」に比較対象の値を設定します。

IFノードからは「true」と「false」という2つの出力パスが伸び、それぞれに後続のノードを接続することで、条件に応じた処理を実行できます。

実践例:メールの件名で処理を分岐

  • Value 1: {{ $("Gmail Trigger").item.json.subject }} (Gmailトリガーで受信したメールの件名)
  • Operation: Contains
  • Value 2: 緊急

この設定により、件名に「緊急」という文字列が含まれているメールを受信した場合のみ、「true」のパス(例:電話で担当者に通知)に進み、それ以外のメールは「false」のパス(例:通常通りチャットで通知)に進む、といったワークフローが構築できます。

2. Switchノード:スマートな多分岐処理

IFノードを複数つなげれば、3つ以上の分岐も可能ですが、ワークフローが複雑になりがちです。そこで登場するのがSwitchノードです。Switchノードは、1つの入力データに対して複数の条件を順番にチェックし、最初に一致した条件のパスに処理を進めます。プログラミングのswitch文やif...elif...else構文に似ています。

使い方

  1. Switchノードを追加し、「Value to Switch On」に分岐の基準となる値を設定します(例:{{ $json.body.category }})。
  2. 「Routing Rules」で「Add Rule」をクリックし、条件を追加していきます。
  3. 各ルールの「Operation」と「Value」を設定します。例えば、「Operation: Equal, Value: A」と設定すると、「Value to Switch On」の値が「A」と等しい場合に、そのパス(Output 0)が実行されます。
  4. 複数のルールを追加でき、上から順番に評価されます。どの条件にも一致しなかった場合は、「Fallback」(デフォルト)のパスが実行されます。

実践例:問い合わせカテゴリで担当者を振り分け

  • Value to Switch On: {{ $("Webhook").item.json.body.category }} (フォームから送信されたカテゴリ)
  • Routing Rules:
    • Rule 1 (Output 0): Equal / 料金プラン → Slackの営業チャンネルに通知
    • Rule 2 (Output 1): Equal / 技術的な質問 → Slackのサポートチャンネルに通知
    • Rule 3 (Output 2): Equal / その他 → Slackの汎用チャンネルに通知

このように、Switchノードを使えば、複数のIFノードを使うよりもはるかにスッキリと、見通しの良い多分岐ワークフローを構築できます。

3. Mergeノード:流れを再び一つに

IFノードやSwitchノードで分岐した処理は、それぞれのパスで完結させることもできますが、多くの場合、最終的に共通の処理(例:完了ログをスプレッドシートに記録する)を行いたいことがあります。その際に、バラバラになった処理の流れを再び一つに合流させるのがMergeノードの役割です。

使い方

  1. 分岐したそれぞれのパスの最後に、Mergeノードを接続します。
  2. 「Mode」で、複数の入力がどのように合流するかを設定します。
    • Append: 最も一般的に使われるモード。各入力からのアイテムを順番に一つのリストとしてまとめ、後続のノードに渡します。後続のノードは、合流したアイテムの数だけループ実行されます。
    • Pass-through: 最初に来た入力データのみを後続に渡し、他の入力は無視します。
    • Combine: 複数の入力アイテムのデータを、一つのアイテムに結合(マージ)します。少し高度な使い方です。

実践例:処理結果をまとめて記録

上記のSwitchノードによる担当者振り分けの後、各Slack通知ノードからMergeノードに接続します。そして、Mergeノードの後に「Google Sheets」ノードを接続し、「問い合わせ内容と、どのチャンネルに通知したか」を一つのスプレッドシートに記録します。これにより、分岐した処理の結果を一元管理できます。

まとめ

条件分岐は、自動化に「知性」を吹き込むための核心的な技術です。

  • 要点1: シンプルな二者択一には「IFノード」を使う。
  • 要点2: 3つ以上の多分岐処理には「Switchノード」を使い、ワークフローをスッキリ保つ。
  • 要点3: 分岐した処理の最後に共通のタスクを実行したい場合は、「Mergeノード」で流れを合流させる。

これらの3つのノードを自在に組み合わせることで、あなたのn8nワークフローは、あらゆる状況を想定した、堅牢でインテリジェントなシステムへと進化します。ぜひ、あなたのワークフローにも「考える力」を組み込んでみてください。

関連記事

related

n8n AIエージェント実践ガイド2026:ビジネスで使える9つのワークフロー事例

自動化

2026年3月5日

n8n AIエージェント実践ガイド2026:ビジネスで使える9つのワークフロー事例

n8nで構築するAIエージェント活用事例:業界別実践ガイド

自動化

2026年3月4日

n8nで構築するAIエージェント活用事例:業界別実践ガイド

n8n最新アップデート完全ガイド:Autosave、バージョン管理、エンタープライズ機能で開発効率を最大化する

自動化

2026年3月4日

n8n最新アップデート完全ガイド:Autosave、バージョン管理、エンタープライズ機能で開発効率を最大化する

← back to list