n8nの変数攻略|3ステップでわかるデータマッピング完全ガイド

n8nの「変数」完全攻略!前のノードのデータを次のノードに渡すマッピング操作ガイド AI開発フレームワーク・ツール

「Googleフォームで受け取った回答を、Slackに通知したい」

「スプレッドシートのデータを読み込んで、メールの宛名に差し込みたい」

n8nでこのような自動化を作る際、避けて通れないのが「前のノードのデータを、次のノードに渡す」という操作です。プログラミングでは「変数」と呼ばれる概念ですが、n8nではコードを書く必要はありません。

この記事では、n8n初心者の方が最初につまずきやすいデータの受け渡し方法(マッピング)を、「ドラッグ&ドロップ」を中心とした直感的な操作で解説します。これさえ覚えれば、どんなデータも自由に繋げるようになります。

【結論】基本は「ドラッグ&ドロップ」だけでOK

結論から言うと、n8nでのデータの受け渡しは、「欲しいデータをマウスで掴んで、入れたい場所に放り込む」。これだけで9割完結します。

難しそうなコード({{ $json.name }} のような記述)を自分で手入力する必要はありません。n8nが裏側で勝手に書いてくれます。

自動化の要!「データフロー」の仕組みを理解する

操作に入る前に、イメージを掴みましょう。

  • n8nのワークフロー: 左から右へ流れる「情報のベルトコンベア」です。
  • 各ノード(ステップ): 作業員です。前の人から受け取った箱(JSONデータ)を開け、加工し、次の人に渡します。

あなたがやるべきなのは、「前の箱に入っていた『名前』というデータを、次の箱の『宛先』ラベルに貼ってね」と指示すること。これが「マッピング(Mapping)」です。

【完全ガイド】n8nの変数を渡す3つのステップ

それでは実際に、Googleスプレッドシートから読み込んだデータを、Slackのメッセージに埋め込む想定で手順を見ていきましょう。

Step 1: 前のノードを一度「実行」する(最重要!)

ここが初心者の最大の落とし穴です。

n8nでは、実際にデータが流れていないと、変数として選ぶことができません。

設定画面を開く前に、必ず前のノード(データを渡す側)にある 「Execute Node」 ボタンを押してください。

> 私の失敗談: n8nを使い始めた最初の週、「なぜ左パネルにデータが出ないんだ?」と30分近く悩み続けました。原因はExecuteボタンを押し忘れていただけ。ノードの下に緑のチェックが付いていない状態では、変数の一覧は永遠に表示されません。この「Execute忘れ」はn8n初心者の9割が踏む罠なので、最初に必ず頭に入れてください。

ノードの下に緑色のチェックマークが付き、データプレビュー(OUTPUT)が表示されていれば準備完了です。

Step 2: 次のノードの設定画面を開く

データを渡したい側(受け取る側)のノードをダブルクリックして設定画面を開きます。

画面の左側(Inputパネル)に、前のノードから流れてきたデータが表示されているはずです。

※もし左側にデータが表示されていない場合:

「Schema」や「Input」というタブを探してクリックするか、パネルを展開してください。

Step 3: ドラッグ&ドロップで埋め込む

ここがハイライトです。

  • 左側のパネルにある「使いたいデータ(例: NameEmail)」を見つけます。
  • その項目をマウスでクリックしたまま掴みます。
  • 右側の設定パネルの「入力したい場所(例: SlackのText欄)」まで引っ張っていき、離します(ドロップ)。

すると、入力欄が紫色になり、{{ $json.Name }} のようなタグが挿入されます。これで接続完了です!

このタグは「今はタグに見えるけど、実行時には本物のデータ(田中さん、佐藤さんetc)に置き換わるよ」という印です。

[応用編] 文字と変数を組み合わせる「Expression」

「データだけじゃなく、『こんにちは、〇〇さん!』のように文章と組み合わせたい」という場合も簡単です。

n8nの入力欄は、標準で「Expression(式)」モードに対応しています。

  • 入力欄にまず「こんにちは、」と手入力します。
  • その直後に、左パネルから名前データをドラッグ&ドロップします。
  • 最後に「 さん!」と手入力します。

完成形イメージ:

こんにちは、{{ $json.Name }} さん!

`

右側のプレビュー画面(Result)で、実際のデータが入った状態(例:「こんにちは、田中太郎 さん!」)が表示されていれば成功です。

n8nがZapierやMakeと決定的に違う点

n8nの変数機能はZapierやMakeと比べて格段に柔軟です。ランサーズ・クラウドワークスで累計200件超の自動化案件を受注してきた経験から、n8n固有の強みを整理します。

変数をコードで直接操作できる

ZapierやMakeでは変数の参照はGUI操作がメインですが、n8nではExpressionモードでJavaScriptを直接書いて変数を加工できます

`javascript

// 文字列を大文字に変換

{{ $json.name.toUpperCase() }}

// 配列の最初の要素だけ取得

{{ $json.items[0].title }}

// 日付を日本語フォーマットに変換

{{ new Date($json.timestamp).toLocaleDateString('ja-JP') }}

`

ノーコードとコードの中間地点として使えるのが、n8nの大きな差別化ポイントです。

離れたノードを直参照する上級テクニック

通常、$json は直前のノードのデータを指します。しかし実際の案件では「3つ前のノードで取得したメールアドレスを、最後のノードで使いたい」というケースが頻繁に発生します。

そんな時に使うのがノード名指定の直参照記法です。

`javascript

{{ $node['Googleスプレッドシート'].json.email }}

`

飲食チェーンの在庫通知システムを構築した案件で、この記法を初めて使ったときにワークフローが一気にシンプルになりました。知らないと無駄なSetノードを挟み続けることになるので、早めに覚えておいて損はありません。

ツール比較まとめ

| 機能 | n8n | Zapier | Make |

|------|-----|--------|------|

| GUIによるマッピング | ✅ | ✅ | ✅ |

| Expressionでコード記述 | ✅ | ❌ | △(限定的) |

| 離れたノードの直参照 | ✅ | ❌ | ❌ |

| セルフホスト可能 | ✅ | ❌ | ❌ |

[注意点] データが見つからない時の対処法

1. 「Execute」し忘れていませんか?

前述の通り、前のノードを実行してデータ(JSON)が存在する状態でないと、ドラッグ元のリストに項目が現れません。

2. 離れたノードのデータを使いたい場合

「直前のノード」ではなく、「3つ前のノード」のデータを使いたい場合もあるでしょう。

左側のInputパネルの上部にあるドロップダウンメニューから、参照したいノード名を選択することで、過去のステップのデータを引っ張り出すことができます。あるいは前述の $node[‘ノード名’].json.フィールド名 記法をExpressionで直接使う方法も有効です。

よくある質問 (QA)

Q1. {{ $json[‘Name’] }} と {{ $json.Name }} の違いは?

どちらも同じ意味ですが、項目名にスペースや特殊文字が含まれている場合(例: User Name)、n8nは自動的に [‘User Name’] というブラケット記法を使います。自動生成されるので、ユーザーが気にする必要はありません。

Q2. 配列(リスト)データの場合はどうなりますか?

スプレッドシートから10行分のデータを読み込んだ場合、n8nは自動的にワークフローを10回繰り返します(ループ処理)。

マッピングの設定は1回やるだけでOKです。「1行目の設定」をしておけば、2行目、3行目…と自動で変数が入れ替わって処理されます。これがn8nの強力な機能です。

まとめ

n8nの変数の渡し方は、プログラミングのような「宣言」や「代入」といった難しい手続きは不要です。

  • 前のノードを実行(Execute)してデータを表示させる。
  • 欲しいデータをドラッグ&ドロップする。
  • 必要に応じてExpressionでJavaScriptを組み合わせる。
  • 離れたノードは $node[‘名前’].json.フィールド` で直参照する。

「掴んで離す」操作さえマスターすれば、n8nの変数操作の基礎は完成です。次のステップとして条件分岐(IFノード)を覚えると、自動化の幅が飛躍的に広がります。ぜひ挑戦してみてください。

次に読む記事:

  • n8nのIFノード完全ガイド|条件分岐でワークフローを賢くする方法
  • n8nのHTTPリクエストノード解説|外部APIと変数を組み合わせる方法

この記事の内容に関する開発・自動化のご依頼はお気軽にご相談ください。

累計200件以上の受注実績・残念評価ゼロ。

参考文献・リンク

コメント

タイトルとURLをコピーしました