blog
ブログ

SalesforceをCDataで連携してみた。(Excel 編)

 様々なクラウドサービスが展開されるようになりましたが、まだまだExcelでのデータ管理が現役な現場は多いと思います。
 今回はそんなExcelとSalesforceのお話です。
 クラウドサービスであるSalesforceにデータ管理を乗り換えたものの、Excelが使い慣れていて手放せないという企業や現場もあるのではないでしょうか。
 そうでない方、つまりSalesforceに完全に移行した方でも、Salesforceで一括編集のためにデータローダーやデータインポートウィザードを利用する時には、結局Excelを起動してCSVファイルを作ったりしますよね。CSV変換も面倒で知識が必要です。

 ということで今回は、


「SalesforceデータをExcel上でデータ分析したい!」
「Excel上で編集したデータをSalesforceに反映したい!」
「データローダーやデータインポートウィザードが使いにくい!」

 といった要望をまとめて解決できてしまうCData Excel Add-In for Salesforceを使用して、SalesforceとExcelを連携させる方法について紹介します!
 最後まで読んでいただければ、ExcelがSalesforce操作ツールに早変わりすること間違いなしです!
さっそく見ていきましょう!

 

 

CData Excel Add-In for Salesforce とは?

 

 CData Excel Add-In for Salesforce(以下CDataアドイン) は、CData社が開発したデータソース連携サポート製品のうちのひとつです。

 本ブログでExcelシート上のテーブルとSalesforceを連携させために利用する製品となります。

 製品ライセンスは有償ですが、30日間の無償トライアルもございます。
 無償トライアルをご希望の方は下記の「お問い合わせ」ボタンから、必要事項を記入後にお問い合わせ内容欄に「CDataトライアル希望」と記載頂き送信頂けますと無償トライアルを準備いたします。

 

 

CDataアドインをExcelに設定

 

 まずはアドインを導入する手順についてご紹介します。アドインというのは、Excelの機能を拡張させる外付けパーツのようなものです。
 導入手順としてはダウンロード、インストールを行った後、Excelアドインの有効化を行います。

 上記「お問い合わせ」ボタンからCDataをダウンロードしたい旨をお問い合わせください。
 ダウンロードを終えたらインストーラーを起動し、インストーラーの手順に沿ってCDataアドインのインストールを完了してください。
 この時、製品版インストールの場合には、ご契約中のライセンス情報を入力する必要があります。トライアル版の場合には、ダウンロード時に登録したメールアドレスに送信されたアクティベートキーを入力してください。

 インストールが完了したらExcelのオプションを開き、アクティブなアプリケーションアドインにCData Excelアドインが含まれていることを確認します。有効化されていない場合は有効化を行ってください。

 また、「オプション」>「リボンのユーザー設定」からCDataタブのチェックボックスにチェックがついているかも確認してください。ついていない場合はつけましょう。
 ExcelのリボンにCDataタブが増えたのを確認したら、次の手順に進みましょう!

 

Salesforceとの接続

 

 次に、ExcelとSalesforce組織と接続させましょう。この手順を終えればSalesforceのデータをExcel上で取得できるようになります!
 Salesforceと接続する際はCDataタブから「データの取得」>「取得元:Salesforce」>「新しいSalesforce 接続」を順に選択し、CData接続エディタを表示します。

 CData 接続エディタでは組織の接続設定を行うことができ、接続ごとに認証方法やBulk APIなどの設定が可能なほか、更新、登録、削除の3つの操作について権限設定を行うことが可能です。
 今回はすべての操作を可能にしたうえで、Oauthで認可を行いました。

 接続が完了するとリボンの「接続マネージャー」から確認できる接続中の組織一覧に追加されます。
 準備完了です。それではさっそくデータを取得してみましょう!

 

 

 

Salesforceデータの取得

 

 Salesforeデータを取得する場合、リボンにある「データの取得」を選択します。
 既に接続済みの組織を選ぶか新規接続を行い、クエリ編集画面を開きます。

 クエリ編集画面からは、GUIで取得する項目を選択でき、条件指定や並び替え等も行うことができます。
 特に各項目に別名(Alias)を付けられるのはSOQLやデータローダーでのデータ取得にはない特徴です。項目のAPI参照名では使用できないような日本語も使えるのでありがたいですね。

 また、少し注意が必要なのは「データの開始行」です。こちらはSOQLのOFFSET句に対応するものではありません。データ取得後、Excelシート上で表示する際に、シートの何行目から取得データを表示するかを設定するものとなっています。取得データの1行目はオブジェクトの項目名の行になっています。シート上部に図形やグラフなどを挿入したい場合、「データの開始行」を利用すると良さそうですね。

 さらに、「自動更新」にチェックを入れると、常にシートを更新してくれます。自動更新の秒数を指定することができ、指定秒数が経過するごとにSalesforceから最新データがExcelシートに取得されます。
 ローカルファイルでありながらも常にほぼ最新データを参照できるというのは便利ですね!
 ただし、この自動更新を有効にしたままExcel上の値を編集していると更新のタイミングで編集中のデータが消えてしまいます。
 そのため自動更新は、データを見るだけの場合にはON、データを編集する場合にはOFFにした方が良いかもしれません。

  05.5自動更新UI強調

 実際に取得したデータはこのように表示されます。

 データを取得したからには、次は編集もしてみましょう!

 

Salesforceデータの更新、登録

 

 データの更新および登録を行うには、一度「データの取得」でデータを取得したうえで、Excel上で編集を行ってから、「データの更新」でSalesforceに更新内容を送信します。
 以下は更新する場合の例になります。取得したデータをExcel上で編集してみると、編集した箇所は赤字で強調されます。これにより、ミスタッチしたまま更新をかけてしまう心配もないでしょう!

 編集が完了したらリボンの「行の更新」を選択し、特定の行のみをSalesforceに反映したい場合は「選択された行の更新」、シート全体の変更をSalesforceに反映したい場合は「すべての行を更新」を選択します。

 更新後、Excel上で赤字になっていた部分は黒字に代わります。また、Salesforceを見に行ってみるとレコードが更新されていることが分かります。

 データを新たに登録する場合でもほとんど同じ操作を行います。取得データの一番下に新規データを入力して「行の更新」を行います。

 注意点としては、新規レコードを追加した際、Excel上ではIDなどのシステム項目が正常に表示されない場合があります。その場合は、「ワークシートのリフレッシュ」を行い、表示を更新することで正常に表示されるようになります。登録後には毎回「リフレッシュ」を行うと良いでしょう。
 編集を終えたら、必要であれば自動更新をONにしておきましょう。

 

Salesforceデータの削除

 

 Salesforceデータを削除する際もExcelから簡単に操作できます。削除対象の行を選択したうえでリボンの「行の削除」を選択し、レコードを削除します。

 Salesforceを確認しに行くと、実際にレコードが削除されていることが分かります。

 誤って削除してしまった場合にはごみ箱から復元しましょう。

 

SQLを使用したデータ操作

 

 SQLを書ける方向けのお話です。
 実はCDataアドインでは、Excelシート上でのデータ操作以外にもSQL形式でのデータ操作が可能です。データ取得の説明では省略していましたが、CData クエリの画面の中にある「SQLを表示」をクリックすると取得条件などをSQLに書き起こしたものが表示されます。このSQLを編集することで、より複雑な条件を指定することも可能です。

 詳しい構文についてはCDataアドインのドキュメントに記載されていますが、SQL準拠なのでSOQLにはないJOIN句やUNION句などを使用することができます。SQLを使い慣れている方には特にありがたい機能かと思います。

 

SELECT
    [Contact].[Id] AS 取引先責任者ID
,   [Contact].[Name] AS 取引先責任者名
,   [Account].[Name] AS 取引先名
FROM [CData].[Salesforce].[Contact]
INNER JOIN [Account]
ON 
    [Account].[Id] = [Contact].[AccountId]
AND [Account].[Id] = @顧客別_取引先責任者!G1
WHERE
    [Contact].[Name] LIKE '%CData%'
LIMIT 100

 

 今回の検証では扱っていませんが、SELECT文の他にもINSERT、UPDATE、UPSERT、DELETEなどの各種DMLの他、DDLについてもサポートされているようです。

 

まとめ

 

 今回はCData Excel Add-In for Salesforceについて基本的なデータ操作とSQLを使用したデータ取得について検証してみました。
 データの入力、変更が高頻度で求められる場合や、一括でデータを操作したい場合には大変便利なアドインではないでしょうか。
 単にデータ連携できるだけでなく、自動更新やSQL準拠などの独特の機能もあり、使いこなせればかなり便利そうでしたね。ドキュメントを確認したところ今回紹介した機能のほかにもビューの定義やファイアウォール、ログなどの機能もあるようです。
 また、CData Excel Add-In for Salesforceには30日間のトライアル版が用意されているため、気になった方はぜひ実際に触って確かめてみてください。

 弊社ではその他CData社製品についてのご案内を行っているほか、「Salesforce導入サービス」 「Salesforce伴走・開発支援サービス」により、Salesforceを新規導入される方、Salesforceの定着・活用や運用保守・開発を要望される方に合ったサービスもご提案しております。
 ご興味のある方は、お気軽にお問い合わせください。
 また、無償トライアルをご希望の方は下記の「お問い合わせ」ボタンから、必要事項を記入後にお問い合わせ内容欄に「CDataトライアル希望」と記載頂き送信頂けますと無償トライアルを準備いたします。

 

 

 当サイトでノウハウ共有やSalesforceの定着促進・保守運用・開発を検討している方へ、様々なダウンロード資料をご用意しております。ぜひ資料をダウンロードいただき、ご活用ください。

contact

ご相談・ご質問等ございましたら、お気軽にお問い合わせください。

翻訳

SFA/CRMに蓄積されている情報を活用する方法ガイド