Get Started

ユーティリティ/生産性ノードの使い方 (Google Sheets)

ユーティリティ/生産性ノードの使い方 (Google Sheets)

ユーティリティ/生産性ノードの使い方 (Google Sheets)

ノードの使い方 — Google Sheetsノード

この文書では、AgentriaのGoogle Sheetsノードの使い方を説明します。Google Sheetsノードは、Googleスプレッドシートのファイルを作成・取得したり、シートを追加したり、セルの値を読み書き・削除したりするノードです。作業(Task)項目で何を選ぶかによって、ノードエディターに表示される入力項目が変わります。

Google Sheetsノードは作業1つにつきノード1つで動作します。この文書では、7つの作業それぞれの機能と使い方を、ノード1つだけを使った例で案内します。

事前準備

Agentriaキャンバスへの進入方法については、🔗3ステップコアガイドをご参照ください。

Google Sheetsノードを使用するには、まずGoogleクレデンシャル(Credential)を登録し、Googleアカウントを連携する必要があります。登録方法については、🔗Googleクレデンシャル設定ガイドをご参照ください。Client ID / Client Secret方式で連携する場合は、データアクセス範囲でGoogle Sheets APIを検索して有効化します。


  • 連携したGoogleアカウントがアクセスできるスプレッドシートのみを扱えます。他の人のシートを扱うには、そのシートが連携したアカウントに共有されている必要があります。


ノードエディターの共通構造

Google Sheetsノードをキャンバスに配置してダブルクリックすると、ノードエディターが開きます。どの作業を選んでも、以下の2つのルールが共通して適用されます。


  • ノードエディターには最初、クレデンシャル作業のみが表示されます。 それ以外の入力項目(スプレッドシートID、範囲、値など)は画面にすぐには表示されず、変数追加ボタンをクリックしてモーダルで必要な項目にチェックを入れ、保存することでノードエディターに表示されます。必須項目も例外ではないため、各作業に必要な項目を漏れなくチェックする必要があります。

  • どの作業でも、出力はresultというObject(オブジェクト)値1つだけです。 Googleスプレッドシート APIのレスポンス形式をそのまま保持しているため、作業によって中身が異なります。ノードテストを実行した後、出力パネルの結果タブでresultを展開して中身を確認するのが最も確実です。


作業一覧

作業ドロップダウンで、以下の7つの中から1つを選択します。

作業

内容

こんなときに使用

Create Spreadsheet

スプレッドシートファイルを新規作成

レポートファイルを毎回新しく作るとき

Get Spreadsheet

ファイルのタイトルとシート(タブ)一覧を取得

どんなシートが入っているか確認したいとき

Create Sheet

既存のファイルに新しいシート(タブ)を追加

月別・日付別にタブを分けるとき

Get Sheet Data

指定した範囲のセルの値を読み取り

シートの内容を取得して処理したいとき

Append to Sheet

既存データの一番下に行を追加

ログ・受付内容を継続的に蓄積するとき

Update Sheet

指定した範囲の値を上書き

特定のセル・領域を更新するとき

Clear Sheet

指定した範囲の値を削除

データを空にして再度入力するとき

Append to SheetUpdate Sheetは混同しやすいです。Append to Sheetはどこに書き込むかを自動的に探し、既存データの一番下の空行から追加します。Update Sheetは指定した位置に正確に書き込み、その場所にあった値は上書きされます。

スプレッドシートID

Create Spreadsheetを除くすべての作業で、スプレッドシートIDspreadsheet_id)を入力する必要があります。扱うGoogleスプレッドシートファイルを区別する固有の文字列で、アドレスバーのURLに含まれています。

たとえばアドレスがhttps://docs.google.com/spreadsheets/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms/edit#gid=0であれば、/d/とその次の/の間にある1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upmsの部分だけをコピーします。

スプレッドシートID項目の説明文には「IDまたはURL」と書かれていますが、実際にはURL全体ではなくID部分のみを入力する必要があります。URLをそのまま入力すると、ノードの実行が失敗します。


  • 正しい値:1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms

  • 誤った値:https://docs.google.com/spreadsheets/d/1BxiMVs.../edit


Create Spreadsheetでファイルを作成した直後であれば、その結果であるresult.spreadsheetIdの値をそのまま使用できます。

1. Create Spreadsheet — スプレッドシートの作成

新しいGoogleスプレッドシートファイルを作成します。

作業Create Spreadsheetを選択し、変数追加で以下の項目を出します。

項目

フィールド名

必須

スプレッドシートタイトル

spreadsheet_title

任意

日次レポート

タイムアウト

timeout

任意

デフォルト60(秒)

スプレッドシートタイトルを空にすると、New Spreadsheetという名前で作成されます。

ノードテストを実行すると、結果タブでresultを展開して以下の値を確認できます。シートのプロパティや書式などの詳細情報も一緒に返されますが、実際に活用する値は以下の2つです。

アウトプット

説明

result.spreadsheetId

新しく作成されたファイルのスプレッドシートID

result.spreadsheetUrl

ファイルをブラウザで開けるアドレス

この作業で作成したファイルに値を書き込んだり読み取ったりするには、他の作業のスプレッドシートID項目にresult.spreadsheetIdの値をそのまま入力します。

2. Get Spreadsheet — ファイル情報の取得

ファイルのタイトルと、その中に含まれるシート(タブ)一覧を取得します。セルの内容は取得しません。 セルの値を読み取るにはGet Sheet Dataを使用します。

作業Get Spreadsheetを選択し、変数追加で以下の項目を出します。新しく登場するオプションはなく、どちらも先述のスプレッドシートID、タイムアウトで扱った項目です。

項目

フィールド名

必須

スプレッドシートID

spreadsheet_id

必須

タイムアウト

timeout

任意

結果はCreate Spreadsheetと同じ形式です。結果タブでresultを展開すると、ファイルのタイトルはresult.properties.title、シート(タブ)一覧はresult.sheets配列で確認できます。シートが複数ある場合は配列にもその数だけ項目が入り、各シートの名前はresult.sheets[番号].properties.titleに格納されています。

3. Create Sheet — シート(タブ)の追加

既存のファイルに新しいシート(タブ)を追加します。

作業Create Sheetを選択し、変数追加で以下の項目を出します。新しく登場するオプションはシート名sheet_name)です。

項目

フィールド名

必須

説明

スプレッドシートID

spreadsheet_id

必須

シートを追加するファイルのID

シート名

sheet_name

任意

新しく作成するシート名

タイムアウト

timeout

任意


シート名を空にすると、Sheet + 番号の形式(例:Sheet3)で自動生成されます。この番号は、ファイル内でこれまでに実際に作成されたシート数を基準に増え続け、途中でシートを削除しても減りません。たとえばSheet14まで作成した後すべて削除しても、次に作成される名前はSheet1ではなくSheet15になります。

同じ名前のシートがすでにある場合は、API operation failed: Failed to create sheet (HTTP 400)エラーが発生します。日付のように毎回変わる名前を使うか、Get Spreadsheetで先にシート一覧を確認してください。

ノードテストを実行すると、結果タブでresultreplies[0]addSheetpropertiesの順に展開して以下の値を確認できます。

アウトプット

説明

result.replies[0].addSheet.properties.title

新しく作成されたシートの名前

result.replies[0].addSheet.properties.sheetId

新しく作成されたシートの固有ID

result.replies[0].addSheet.properties.index

新しく作成されたシートの位置(何番目のタブか)

4. Get Sheet Data — シートデータの読み取り

指定した範囲のセルの値を読み取ります。

作業Get Sheet Dataを選択し、変数追加で以下の項目を出します。

項目

フィールド名

必須

スプレッドシートID

spreadsheet_id

必須

読み取るファイルのID

シート範囲

range_name

必須

Sheet1!A1:C10

データ解釈方法

major_dimension

任意

Rows

タイムアウト

timeout

任意

デフォルト60(秒)

シート範囲を空にするとエラーが発生します。シート名を省略してA:Zのように列範囲だけを入力すると、Sheet1タブが対象になります。データ解釈方法major_dimension)はRowsColumnsのいずれかを選びます。Rows(デフォルト)は人が見る表の形そのまま行単位で受け取り、Columnsは同じ列の値をまとめて受け取ります。特別な理由がなければRowsをそのまま使用します。

ノードテストを実行すると、結果タブでresultを展開して以下の値を確認できます。

アウトプット

説明

result.range

実際に読み取った範囲

result.majorDimension

ROWSまたはCOLUMNS(大文字で表記される)

result.values

読み取ったセルの値(二次元配列)

シートが以下のようになっている場合、


A

B

C

1

名前

年齢

都市

2

John

30

ソウル

result.values[["名前", "年齢", "都市"], ["John", 30, "ソウル"]]のように、行ごとに配列で格納されます。

範囲に値が1つもない場合、resultにはrangemajorDimensionのみが含まれ、values自体が存在しません。後に続くノードが「valuesに配列がある」と前提にしていると失敗する可能性があるため、値がない場合に備えておいてください。

5. Append to Sheet — データの追加

既存データの一番下に新しい行を追加します。どこが最後の行かはGoogleが自動的に判断します。

作業Append to Sheetを選択し、変数追加で以下の項目を出します。フィールド構成は6. Update Sheetと同じです。

項目

フィールド名

必須

スプレッドシートID

spreadsheet_id

必須

シート範囲

range_name

必須

values

必須

値入力オプション

value_input_option

任意

応答に更新された値を含める

include_values_in_response

任意

タイムアウト

timeout

任意

Update Sheetと決定的に異なるのは、シート範囲が意味するところです。Append to Sheetでは「ここに書き込め」ではなく、**「ここから表を探せ」**という意味です。Sheet1!A:Cのように列範囲を広く指定すると、すでに値が入っている行の次から自動的に追加されます。

シート範囲で指定した列幅よりの列数が多い場合、範囲を超えた列にもそのまま書き込まれます。たとえばシート範囲Sheet1!A:B(2列)にしても、が3列であればC列まで書き込まれます。つまりシート範囲の列幅は「ここまでしか書き込むな」という制限ではなく、既存の表を探すための基準にすぎません。Sheet1!A2:B3のような狭い範囲を指定しても、Sheet1のようにシート名だけを指定しても、同じように動作します。

には一度に複数の行を入れることもできます。たとえば[["Alice", 28, "Incheon"], ["Bob", 34, "Daegu"]]のように2行を入れると、2行がまとめて追加されます。

ノードテストを実行すると、結果タブでresultを展開して以下の値を確認できます。

アウトプット

説明

result.tableRange

値を追加する前にすでに存在していた表の範囲

result.updates.updatedRange

今回実際に値が書き込まれた位置

result.updates.updatedRows / updatedColumns / updatedCells

追加された行数/列数/セル総数

6. Update Sheet — データの上書き

指定した位置に値を正確にそのまま書き込みます。元々あった値は消えます。

作業Update Sheetを選択し、変数追加で以下の項目を出します。

項目

フィールド名

必須

スプレッドシートID

spreadsheet_id

必須

対象ファイルのID

シート範囲

range_name

必須

Sheet1!A1:C1

values

必須

[["日付", "項目", "金額"]]

値入力オプション

value_input_option

任意

デフォルトUser Entered

応答に更新された値を含める

include_values_in_response

任意

デフォルトOff

タイムアウト

timeout

任意

デフォルト60(秒)

シート範囲のサイズを合わせる必要があります。範囲が3行なのに値が5行だとエラーになり、範囲が3行なのに値が2行だと、残りの3行目は消去されずそのまま残ります。消去してから新しく書き込みたい場合は、先にClear Sheetで空にしてから書き込む方が安全です。

ノードテストを実行すると、結果タブでresultを展開して以下の値を確認できます。

アウトプット

説明

result.updatedRange

実際に更新された範囲

result.updatedRows / updatedColumns / updatedCells

更新された行数/列数/セル総数

Append to Sheetとは異なり、これらの値はupdatesでさらに1段階包まれることなく、resultの直下にあります。

7. Clear Sheet — データの削除

指定した範囲の値のみを削除します。シート自体や書式(色、罫線など)はそのまま残ります。

作業Clear Sheetを選択し、変数追加で以下の項目を出します。新しく登場するオプションはありません。

項目

フィールド名

必須

スプレッドシートID

spreadsheet_id

必須

シート範囲

range_name

必須

タイムアウト

timeout

任意

タイトル行は残してデータだけを空にしたい場合は、2行目から範囲を指定します。Sheet1!A2:Z1000のように指定すると、1行目のタイトルは残り、2行目以降の値だけが削除されます。

ノードテストを実行すると、結果タブでresultを展開して以下の値を確認できます。

アウトプット

説明

result.clearedRange

実際に空にされた範囲

値だけが削除され、セルの書式(色、罫線など)やシート自体はそのまま残ります。

範囲の表記法

シート範囲range_name)項目は、Excelで使うセルアドレス方式と同じです。シート名!開始セル:終了セルの形式で入力します。

入力する値

意味

Sheet1!A1:C10

Sheet1タブのA1からC10まで(3列×10行)

Sheet1!A:C

Sheet1タブのA、B、C列全体(行数制限なし)

Sheet1!B2

Sheet1タブのB2の1セル

Sheet1!A2:Z1000

最初の行(タイトル行)を除いた残り

A:Z

シート名を省略すると、一番左のタブが対象になる

シート名にスペースが含まれる場合は、シングルクォートで囲むことを推奨します。囲まなくても内部的に処理されて問題なく動作しますが、表記を明確にするために囲んで書く方が良いでしょう。


  • 推奨:'売上サマリー'!A1:D100

  • クォートなしでも動作:売上サマリー!A1:D100


値(表データ)の入力方法

values)項目は、表を1枚まるごと二次元配列で書くとイメージすると分かりやすいです。

  1. 1行は角括弧[ ]で囲みます。例:["John", 30, "ソウル"]

  2. 複数行は、その角括弧をさらに外側の角括弧で囲みます。例:[行1, 行2, 行3]

以下の表を入力したい場合、

名前

年齢

都市

John

30

ソウル

Jane

25

釜山

次のように書きます。

[
  ["名前", "年齢", "都市"],
  ["John", 30, "ソウル"],
  ["Jane", 25, "釜山"]
]
[
  ["名前", "年齢", "都市"],
  ["John", 30, "ソウル"],
  ["Jane", 25, "釜山"]
]
[
  ["名前", "年齢", "都市"],
  ["John", 30, "ソウル"],
  ["Jane", 25, "釜山"]
]

1行だけを入力する場合でも、外側の角括弧が必要です。


  • 正しい例:[["Alice", 28, "Incheon"]]

  • 誤った例:["Alice", 28, "Incheon"] — 縦方向に誤って入るか、エラーが発生する可能性があります


文字は二重引用符" "で囲み、数字は引用符なしで書きます。空のセルは""にします。

1つのセルに入力できる値の種類は以下のとおりです。

入力したいもの

書き方

シートに反映される見た目(想定)

文字

"ソウル"

ソウル

数字

28(引用符なし)

28

先頭に0がある番号

"01012345678" + 値入力オプションをRaw

01012345678

空のセル

""

(空)

真偽値

trueまたはfalse(引用符なし)

TRUE / FALSE

日付

"2026-08-10"

日付として認識

パーセント

"35%"

35%

金額

1200または"₩1,200"

1200 / ₩1,200

数式

"=SUM(A1:A3)"

計算された結果

リンク

""

クリック可能なリンク

日付・パーセント・金額・数式は、値入力オプションUser Enteredのときのみ解釈されます。Rawにすると、すべて文字としてそのまま入力されます。リンクは例外で、User EnteredRawどちらであってもURL形式の文字列であれば自動的にクリック可能なリンクになります。詳しい比較は値入力オプションをご参照ください。

文字の中に二重引用符や改行を入れる場合は、前に円記号(バックスラッシュ)\を付けます。

入力したいもの

書き方

二重引用符"

\"

1セル内での改行

\n

円記号(バックスラッシュ)\

\\

シングルクォート'とカンマ,は、文字の中にそのまま書いても問題ありません。

値入力オプション

値入力オプションvalue_input_option)は、Append to SheetUpdate Sheet作業で入力した値をGoogleが解釈するか、文字としてそのまま扱うかを決める項目です。

選択肢

動作

User Entered(デフォルト)

人が直接入力したかのように処理 — 数式・日付・数値へ自動変換

Raw

入力した文字をそのまま保存

Rawを選ぶべき代表的なケースは、電話番号・郵便番号・社員番号のように先頭の0が消えては困る値を扱うときです。それ以外は、デフォルトのUser Enteredをそのまま使用します。

同じ値(日付・パーセント・数値・数式など)を、1行はUser Enteredで、1行はRawでそれぞれ書いて比較すると、違いがはっきり分かります。User Enteredの行は日付・パーセント・数値がすべて右揃えで表示され、実際に日付・数値の型として認識されたことが分かり、=SUM(1,2,3)のような数式も計算されて結果値になります。Rawの行は左揃えの文字列としてそのまま保存され、数式も文字のまま残ります。

リンク(https://example.comのようなURL文字列)は、どちらのオプションでもクリック可能なリンクとして表示されます。Google Sheetsは、URL形式の文字列を値入力オプションに関係なく自動的にリンク化するようです。

応答に更新された値を含める

応答に更新された値を含めるinclude_values_in_response)は、Append to SheetUpdate Sheet作業で変数追加から出せるチェックボックスです。

状態

結果に含まれるもの

オフ(デフォルト)

どの範囲に何行書き込まれたかの要約のみ

オン

要約 + 実際にシートに記録された内容

オンにすると、result.updatesの中にupdatedDataが追加され、結果タブで展開すると、その中に実際に書き込まれた範囲(updatedData.range)と値(updatedData.values)が格納されているのを確認できます。

値入力オプションUser EnteredでGoogleが値を変換して保存した可能性があるとき(例:"0123"を入力したのに123として保存された場合)、実際に何が入力されたかを確認したい場合にオンにします。データが多いと結果もその分大きくなるため、通常はオフのままにしておくことを推奨します。

タイムアウト

Googleの応答を待つ最大時間です。


  • 単位:秒(デフォルト60秒)

  • 小数点なしの整数で入力


広い範囲を読み取ったり、多くの行を一度に書き込んだりする際にタイムアウトエラーが発生する場合は、この値を増やします。それでも失敗する場合は、範囲を分割して複数回に分けて処理することを検討してください。

複数のノードで連携するには

この文書の例は、ノード1つだけを使って各作業の入力・出力を確認する方式です。実際のワークフローでは、「新しいファイルを作成 → そのIDで値を書き込む」のように、複数のGoogle Sheetsノードを連携させて値を自動的に受け渡す必要がある場合が多くあります。

各作業の出力はresultというObject 1つの中にネストされているため、spreadsheetIdのようにその中の値1つだけを次のノードのString項目(例:spreadsheet_id)に直接ドラッグ&ドロップで接続することはできません。このような場合は、PythonノードでGoogle Sheetsノードを関数ノードとして接続して呼び出し、result.get("spreadsheetId")のように必要な値だけを取り出して使う方法を用います。この構成はPythonコードの作成が必要な上級者向けの活用方法のため、この文書では扱いません。

このノードでできないこと

Google Sheetsノードは、以下の作業には対応していません。必要な場合はGoogleスプレッドシートで直接行うか、別の方法を探す必要があります。


  • シート(タブ)の削除、名前変更、順序の入れ替え

  • スプレッドシートファイルの削除、共有設定の変更

  • セルの書式指定(フォント、色、罫線、条件付き書式)

  • 行/列の挿入・削除、列幅の調整

  • グラフ・ピボットテーブルの作成

  • フィルター・並べ替えの適用


よくある間違い

症状

原因

解決方法

「スプレッドシートが見つからない」というエラー

スプレッドシートID項目にURL全体を入力した

URLの/d/と次の/の間の文字列だけを入力する

値を入力したのに縦に入ってしまう、またはエラーになる

値を角括弧1重だけで書いた

[["a","b"]]のように2重で囲む

電話番号の先頭の0が消える

値入力オプションがUser Entered

Rawに変更

=SUM(...)が計算されず文字のまま表示される

値入力オプションがRaw

User Enteredに変更

上書きしたのに古いデータが下に残っている

Update Sheetは指定した範囲外を変更しない

先にClear Sheetで空にしてから書き込む

データが想定と違う行に追加される

Append to Sheetは最後の行を自動的に探す

正確な位置が必要な場合はUpdate Sheetを使用

必要な項目を設定したのにノードエディターに表示されない

変数追加で出していない

変数追加ボタンをクリックして項目にチェックを入れ保存する

権限エラー

連携したGoogleアカウントにそのファイルの権限がない

そのアカウントにファイルを共有する

次のステップ

🎉 おめでとうございます! AgentriaのGoogle Sheetsノードで7つの作業をそれぞれ実行してみました。

Create Spreadsheetで作成したファイルにUpdate Sheetでタイトル行を書き込み、Append to Sheetでデータを蓄積するように、複数の作業を連携させるワークフローも作ってみてください。

Agentriaは、アイデアを現実に変える可能性の空間です。

あなたのアイデア次第で、ワークフローは無限に広がります。



よくある質問

Google Sheetsノードとは何ですか?

Google Sheetsノードは、AgentriaでGoogleスプレッドシートのファイルを作成・取得したり、シートを追加したり、セルの値を読み書き・削除したりするノードです。「ユーティリティ・生産性」カテゴリに属し、作業項目でCreate SpreadsheetGet SpreadsheetCreate SheetGet Sheet DataAppend to SheetUpdate SheetClear Sheetのいずれかを選択して動作を決めます。

Google Sheetsノードを使用するには何を準備すればよいですか?

Googleクレデンシャルを登録し、Googleアカウントを連携する必要があります。連携方法については、🔗Googleクレデンシャル設定ガイドをご参照ください。連携したアカウントがアクセスできるスプレッドシートのみを扱えるため、他の人のシートを扱うには事前に共有してもらう必要があります。

ノードエディターにスプレッドシートIDなどの項目が表示されません。

Google Sheetsノードはクレデンシャル作業のみがデフォルトで表示され、それ以外の入力項目はすべて変数追加ボタンでチェックを入れて出す必要があります。必須項目も例外ではないため、使用する作業に必要な項目を変数追加モーダルで漏れなくチェックしてください。

Append to SheetとUpdate Sheetはどう違いますか?

Append to Sheetは既存データの一番下の空行を自動的に探して新しい行を追加します。一方Update Sheetは指定した範囲に正確に値を書き込み、その場所にあった値は消えます。ログや受付内容のように継続的に蓄積すべきデータにはAppend to Sheetを、特定のセルや領域を更新する必要がある場合はUpdate Sheetを使用します。

値項目には表データをどのような形式で入力しますか?

各行の値を角括弧で囲み、その行をさらに外側の角括弧で囲む二次元配列形式で入力します。たとえば2行分の表は[["John", 30, "ソウル"], ["Jane", 25, "釜山"]]のように書きます。1行だけを入力する場合でも、外側の角括弧を省略できません。詳しい表記ルールは値(表データ)の入力方法をご参照ください。

1つのノードで複数の作業を処理できますか?

いいえ。Google Sheetsノード1つは、作業項目で選択した動作1つだけを実行します。複数の作業を連続して処理するには、Google Sheetsノードを複数配置し、ノードごとに異なる作業を選択して順番に接続する必要があります。