GASでSalesforceを連携|自動化の仕組みと実装方法

著者: B2Bデジタルプロダクト実践ガイド編集部公開日: 2025/12/8

Salesforceのデータをスプレッドシートでもっと活用したい…

Salesforceを利用しているB2B企業の多くが、「レポートデータをスプレッドシートに自動で反映したい」「手作業でのデータ転記をなくしたい」「営業データを定期的にエクスポートしたい」といった課題を抱えています。

GAS(Google Apps Script)を使えば、SalesforceとGoogleスプレッドシートを連携し、データの自動同期や定期的なレポート出力を実現できます。この記事では、GASとSalesforceの連携方法を、非エンジニア向けのアドオン活用からAPI連携の実装手順まで解説します。

この記事のポイント:

  • GAS×Salesforce連携で、スプレッドシートへのデータ自動同期が実現可能
  • 連携方法は2種類:Salesforce Connector(ノーコード)とREST API(カスタマイズ向け)
  • API連携にはSalesforceの管理者権限が必要な場合がある
  • GASのトリガー機能で定期的な自動実行が可能(毎時・毎日など)
  • アクセストークンの期限切れやAPI仕様変更への対応が必要

GASとSalesforce連携でできること:業務自動化の可能性

GASとSalesforceを連携することで、日常業務の様々な自動化が可能になります。

(1) スプレッドシートへのデータ自動同期

Salesforceの顧客情報、商談データ、レポートなどをGoogleスプレッドシートに自動同期できます。

活用例:

  • 週次の営業レポートを自動でスプレッドシートに出力
  • 顧客リストを最新の状態に自動更新
  • 商談の進捗状況をリアルタイムで共有

手作業でのデータ転記が不要になり、常に最新のデータをスプレッドシート上で確認・分析できるようになります。

(2) レポート自動整形・メール配信の自動化

Salesforceのレポートデータを取得し、GASで整形・加工した後、メール配信まで自動化することも可能です。

活用例:

  • 日次の売上レポートを整形してチームに自動配信
  • 特定条件の商談リストを抽出してアラートメール送信
  • 月次の実績データをグラフ化して経営層に共有

2024年には、非エンジニアがマーケティングオートメーションを使わずにメール配信を完全自動化した事例も登場しています。

GAS(Google Apps Script)の基礎知識

(1) GASとは:JavaScriptベースのスクリプトプラットフォーム

GAS(Google Apps Script)は、Googleが提供するJavaScriptベースのスクリプトプラットフォームです。Googleスプレッドシート、Gmail、Googleカレンダーなど、Google Workspaceの各種サービスを操作・連携できます。

GASの特徴:

  • JavaScriptの文法で記述可能
  • ブラウザ上のエディタで開発できる(環境構築不要)
  • Google Workspaceとの連携が容易
  • 外部APIへのHTTPリクエストが可能
  • トリガー機能で定期実行を自動化

(2) GASでできること(スプレッドシート操作・外部API連携)

スプレッドシート操作:

  • セルの読み書き、シートの作成・削除
  • データの並び替え・フィルタリング
  • グラフの作成・更新
  • フォーマットの適用

外部API連携:

  • REST APIへのHTTPリクエスト(GET/POST/PUT/DELETE)
  • JSONデータの取得・解析
  • 外部サービスとのデータ連携
  • OAuthによる認証

これらの機能を組み合わせることで、Salesforceのデータをスプレッドシートに取り込み、加工・分析することが可能になります。

GAS×Salesforce連携の2つの方法(アドオン vs API)

(1) Salesforce Connector:非エンジニアでも簡単に連携

Salesforce Connector(Data Connector for Salesforce)は、GoogleスプレッドシートとSalesforceを連携するアドオンです。プログラミング不要で、スプレッドシートから直接Salesforceのデータをインポート・編集・同期できます。

Salesforce Connectorの特徴:

  • 無料で利用可能
  • ノーコードでSalesforceデータを取得
  • スプレッドシート上でデータ編集→Salesforceに反映
  • Auto Refresh機能で最短4時間ごとに自動同期

利用手順(概要):

  1. Googleスプレッドシートを開く
  2. アドオン → アドオンを取得 → 「Data Connector for Salesforce」を検索
  3. アドオンをインストール
  4. Salesforceアカウントで認証
  5. 取得したいオブジェクト・レポートを選択
  6. データをインポート

※詳細な設定手順はGoogle公式ヘルプを参照してください。

向いているケース:

  • プログラミングなしで連携したい
  • 標準的なデータ取得・同期で十分
  • 定型のレポートを自動出力したい

(2) REST API連携:柔軟なカスタマイズが可能

SalesforceのREST APIをGASから直接呼び出すことで、より柔軟なカスタマイズが可能になります。

REST API連携の特徴:

  • 複雑な条件でのデータ取得が可能
  • データの更新・作成・削除も対応
  • 他の処理と組み合わせた自動化が可能
  • 詳細なエラーハンドリングが実装できる

向いているケース:

  • アドオンでは実現できない処理が必要
  • データの更新・作成を自動化したい
  • 複数のサービスを組み合わせた連携が必要
  • 詳細なカスタマイズ・制御が必要

(3) 他の連携方法(Zapier・連携ツール)との比較

GAS以外にも、Salesforceとスプレッドシートを連携する方法があります。

方法 特徴 コスト 向いているケース
Salesforce Connector ノーコード、簡単 無料 定型的なデータ連携
GAS(API連携) 柔軟、カスタマイズ可能 無料 複雑な自動化処理
Zapier ノーコード、多数連携 有料(無料枠あり) 複数サービスの連携
CData Connect Cloud JDBC経由、多機能 有料 大量データの高速連携

用途・予算・技術リソースに応じて適切な方法を選択することが重要です。

API連携の実装手順(認証からデータ取得まで)

(1) 接続アプリケーションの作成とOAuth認証

GASからSalesforce APIを利用するには、Salesforce側で「接続アプリケーション」を作成し、OAuth認証でアクセストークンを取得する必要があります。

事前準備(Salesforce管理者が実施):

  1. Salesforceの「設定」画面を開く
  2. 「アプリケーションマネージャ」→「新規接続アプリケーション」
  3. 基本情報を入力(アプリケーション名、API名など)
  4. OAuth設定を有効化
  5. コールバックURLを設定
  6. OAuthスコープを設定(「フルアクセス」など)
  7. 保存して「コンシューマ鍵」「コンシューマの秘密」を取得

※Salesforceの管理者権限がないとこの設定ができないため、管理者との調整が必要です。

(2) アクセストークンの取得とリフレッシュ処理

OAuth認証でアクセストークンを取得します。トークンには有効期限があるため、refresh_tokenを使った再取得処理も実装が必要です。

トークン取得の流れ:

  1. 認証エンドポイントにリダイレクト
  2. ユーザーがSalesforceでログイン・許可
  3. 認可コードを受け取る
  4. 認可コードをアクセストークンに交換
  5. refresh_tokenを保存(トークン更新用)

注意点:

  • アクセストークンは期限切れになるため、refresh_tokenで再取得する処理が必要
  • トークンはPropertiesServiceなどで安全に保存
  • セキュリティ上、トークン情報はコード内にハードコードしない

(3) SoQL(Salesforce Object Query Language)でのデータ取得

SoQL(Salesforce Object Query Language)は、Salesforce独自のクエリ言語です。SQLと似た構文で、条件に合ったデータを取得できます。

SoQLの例:

SELECT Id, Name, Amount, CloseDate FROM Opportunity WHERE StageName = 'Closed Won'

SQLとの主な違い:

  • テーブル名ではなくオブジェクト名を使用
  • カラム名ではなく項目名(API参照名)を使用
  • JOINの代わりにリレーションシップクエリを使用

※SoQLの詳細はSalesforce公式ドキュメントを参照してください。

自動化のトリガー設定とエラーハンドリング

(1) GASトリガー機能(時間主導型・日付ベース)

GASのトリガー機能を使えば、定期的な自動実行を設定できます。

トリガーの種類:

  • 時間主導型: 毎分、毎時、毎日、毎週、毎月
  • 日付ベース: 特定の日時に実行
  • スプレッドシートのイベント: 編集時、フォーム送信時など

設定手順:

  1. スクリプトエディタを開く
  2. 「トリガー」アイコンをクリック
  3. 「トリガーを追加」
  4. 実行する関数、実行頻度を設定
  5. 保存

(2) Auto Refresh機能の活用(最短4時間ごと)

Salesforce Connectorを使用している場合、Auto Refresh機能で最短4時間ごとにSalesforceレポートをスプレッドシートに自動出力できます。

Auto Refreshの設定:

  1. Salesforce Connectorを開く
  2. 対象のレポート/オブジェクトを選択
  3. Auto Refreshを有効化
  4. 更新頻度を設定(4時間、8時間、12時間、24時間)

(3) トークン期限切れ・API仕様変更への対応

長期運用では、トークンの期限切れやAPI仕様の変更に対応する必要があります。

エラーハンドリングのポイント:

  • トークン期限切れ: refresh_tokenで新しいアクセストークンを取得
  • API仕様変更: Salesforceのリリースノートを定期確認
  • レート制限: API呼び出し回数の上限に注意
  • エラーログ: 実行エラーを記録して原因追跡

実装上の注意:

  • try-catch文でエラーをキャッチ
  • エラー発生時にアラートメールを送信
  • 定期的にスクリプトの動作確認を実施

まとめ:活用事例と連携方法の選び方

GASとSalesforceの連携により、データの自動同期や業務の効率化が実現できます。連携方法は、技術リソースと要件に応じて選択することが重要です。

連携方法の選び方:

要件 推奨方法
プログラミングなしで連携したい Salesforce Connector
定型的なデータ同期で十分 Salesforce Connector
複雑な条件でのデータ取得が必要 GAS + REST API
データの更新・作成を自動化したい GAS + REST API
複数サービスとの連携が必要 Zapier、連携ツール

導入時のチェックポイント:

  • Salesforce管理者との事前調整(API連携の場合)
  • 取得したいデータ・処理内容の明確化
  • セキュリティ要件の確認(トークン管理など)
  • エラー発生時の対応方針
  • 定期的なメンテナンス体制

次のステップ:

  1. 自動化したい業務・取得したいデータを整理する
  2. 技術リソースと要件に応じて連携方法を選択する
  3. Salesforce Connectorの場合はアドオンをインストールして試す
  4. API連携の場合はSalesforce管理者と調整して接続アプリケーションを作成

※Salesforce APIの仕様や設定方法は変更される可能性があります。最新情報はSalesforce公式ドキュメント・Google公式ヘルプを参照してください。

よくある質問:

Q: GAS×Salesforce連携には管理者権限が必要? A: API連携の場合、Salesforce側で接続アプリケーションを作成する必要があり、通常は管理者権限が必要です。事前に社内のSalesforce管理者との調整が必要になります。Salesforce Connectorの場合は、個人のSalesforceアカウントで認証できます。

Q: 非エンジニアでもGAS×Salesforce連携はできる? A: Salesforce Connectorアドオンを使えば、プログラミングなしで連携可能です。スプレッドシートからSalesforceデータのインポート・編集・同期ができます。複雑な処理が必要な場合はエンジニアの協力が必要になります。

Q: SoQLとは?SQLとの違いは? A: SoQL(Salesforce Object Query Language)はSalesforce専用のクエリ言語です。SQLと似た構文ですが、オブジェクト名・項目名はSalesforceの定義に従います。JOINの代わりにリレーションシップクエリを使用する点も異なります。

Q: 定期的なデータ同期は自動化できる? A: GASのトリガー機能を使えば、時間主導型(毎時・毎日など)で自動実行が可能です。Salesforce ConnectorのAuto Refresh機能なら、最短4時間ごとにデータを自動同期できます。

よくある質問

Q1GAS×Salesforce連携には管理者権限が必要?

A1API連携の場合、Salesforce側で接続アプリケーションを作成する必要があり、通常は管理者権限が必要です。事前に社内のSalesforce管理者との調整が必要になります。Salesforce Connectorの場合は、個人のSalesforceアカウントで認証できます。

Q2非エンジニアでもGAS×Salesforce連携はできる?

A2Salesforce Connectorアドオンを使えば、プログラミングなしで連携可能です。スプレッドシートからSalesforceデータのインポート・編集・同期ができます。複雑な処理が必要な場合はエンジニアの協力が必要になります。

Q3SoQLとは?SQLとの違いは?

A3SoQL(Salesforce Object Query Language)はSalesforce専用のクエリ言語です。SQLと似た構文ですが、オブジェクト名・項目名はSalesforceの定義に従います。JOINの代わりにリレーションシップクエリを使用する点も異なります。

Q4定期的なデータ同期は自動化できる?

A4GASのトリガー機能を使えば、時間主導型(毎時・毎日など)で自動実行が可能です。Salesforce ConnectorのAuto Refresh機能なら、最短4時間ごとにデータを自動同期できます。

B

B2Bデジタルプロダクト実践ガイド編集部

「B2Bデジタルプロダクト実践ガイド」は、デシセンス株式会社が運営する情報メディアです。B2Bデジタルプロダクト企業のマーケティング・営業・カスタマーサクセス・開発・経営に関する実践的な情報を、SaaS、AIプロダクト、ITサービス企業の実務担当者に向けて分かりやすく解説しています。