kintoneとExcelとの連携まとめ

# はじめに
業務をスムーズに進めるために、kintoneとExcelを連携したいことがあると思います。
以下、Excelにkintoneのデータを取り込む方法をまとめてみました。
手動、自動、いろいろな方法があるので、網羅しきれていないものもあると思いますがご容赦ください。
なお、ここではkintoneのデータとしては、アプリのレコードのデータについて扱います。


# a. ライトコース
kintoneライトコースでは、kintoneのREST APIを利用することができないので、手動でkintoneのデータをCSV形式のファイルに書き出して、Excelでそのデータを開くことができます。
[kintoneヘルプ > ファイルにデータを書き出す](https://jp.cybozu.help/k/ja/user/app_collectdata/data_export.html)

# b. スタンダードコース
kintoneスタンダードコースでは、kintoneのREST APIが利用できるので、Excelでkintoneのデータを直接読み込むことができます。
[kintone - 拡張機能](https://kintone-sol.cybozu.co.jp/integrate/?_ga=2.122551756.637281878.1545635560-1765099572.1545635560)

## b-1. Excelの「データの取得と変換」で読み込む
Windows版のExcel2019やOffice365のExcelでは、「データの取得と変換」でkintoneのデータを読み込むことができます。
[Excel 2016 や Power BI から kintone のレコードを REST API で取り出す](https://blog.r3it.com/powerquery-to-kintone-7285660f10bb)でも紹介されていますが、以下にその方法をご紹介します。

1. kintoneの準備を行います。
・アプリIDを書き留めておきます。アプリIDは、kintoneのアプリを開いた時のURLの「～.cybozu.com/k/」の後ろの数字です。
![アプリID](https://qiita-image-store.s3.amazonaws.com/0/152073/91cd67db-5487-3fd5-5653-800fb246684e.png)
・アプリの設定画面の「設定」タブの「APIトークン」で、APIトークンを生成し、その文字列をコピーしておいてから、設定を保存してアプリを更新します。![APIトークン](https://qiita-image-store.s3.amazonaws.com/0/152073/80e7abf6-5a38-c2ef-8b06-cc7def2fae43.png)

2. Excelの[データ]タブの[データの取得と変換]グループの[Webから]をクリックします。![データの取得と変換](https://qiita-image-store.s3.amazonaws.com/0/152073/6e4c61ac-693d-35cc-7037-72dce0c7100a.png)

3. 「Webから」の「詳細設定」をクリックします。![詳細設定](https://qiita-image-store.s3.amazonaws.com/0/152073/1e145750-058e-eaf5-ae51-91c48adda595.png)

4. 「URL部分」にkintoneAPIの[「レコードの一括取得」のURI](https://developer.cybozu.io/hc/ja/articles/202331474#step2)を入力します。![「レコードの一括取得」のURI](https://qiita-image-store.s3.amazonaws.com/0/152073/ac14398a-5d9d-0e1d-d72f-aa906a064754.png)

5. 「URL部分」の2つ目の欄に「?」に続けて[アプリIDなどのリクエストパラメータ](https://developer.cybozu.io/hc/ja/articles/202331474#step2)を入力します。
![1.png](https://qiita-image-store.s3.amazonaws.com/0/152073/71a88dfd-ddea-852c-16d3-5fe70d9d209c.png)

6. 「HTTP要求ヘッダーパラメーター」の左側の欄に「X-Cybozu-API-Token」と入力し、右側の欄にコピーしたAPIトークンを貼り付けます。![APIトークン](https://qiita-image-store.s3.amazonaws.com/0/152073/ae5560bf-8b5d-e778-21d2-b8f2fd809381.png)
参考 : [ユーザー認証](https://developer.cybozu.io/hc/ja/articles/201941754#step7) : APIを実行するリクエストには、認証のためのヘッダを追加する必要があります。アプリごとに生成するAPIトークンを使用して、kintone REST APIを処理できます。 

7. 「OK」をクリックして、kintoneからデータを取り込みます。![OK](https://qiita-image-store.s3.amazonaws.com/0/152073/82cecd26-ad07-2187-470a-31c91db03411.png)

8. 「Webコンテンツへのアクセス」の「OK」をクリックします。![Webコンテンツへのアクセス](https://qiita-image-store.s3.amazonaws.com/0/152073/85d5a86e-a219-a366-a959-fec26bfae2fb.png)

9. 「Power Query エディター」が表示されます。「テーブルへの変換」をクリックします。![テーブルへの変換](https://qiita-image-store.s3.amazonaws.com/0/152073/38b0caf3-2dda-8834-6d55-4a8ff0b75e2a.png)

10. 「Value」列の右側のアイコンをクリックし、「新しい行に展開する」をクリックします。![展開](https://qiita-image-store.s3.amazonaws.com/0/152073/f0af044d-3843-8b72-ec53-6a50b46e17b0.png)

11. 「Value」列の右側のアイコンをクリックし、右下の「読み込む」をクリックします。![読み込む](https://qiita-image-store.s3.amazonaws.com/0/152073/0e573dfc-7bfd-1fde-55ea-95d096e2fb5e.png)

12. 「新しい行に展開する」をクリックします。![新しい行に展開する](https://qiita-image-store.s3.amazonaws.com/0/152073/48aac5d4-accd-d509-ca67-68a0c6ec4b2f.png)

13. 展開された各列の右側のアイコンをクリックして、同様に展開します。![同様に展開](https://qiita-image-store.s3.amazonaws.com/0/152073/ab3cc939-84a4-e37f-547e-6d98e7fe571b.png)

14. すべての列を展開できたら、[ホーム]タブの[閉じて読み込む]をクリックします。![閉じて読み込む](https://qiita-image-store.s3.amazonaws.com/0/152073/b40aa6a0-c381-e161-6bd8-b6e1f8df37c7.png)

15. Excelにkintoneアプリのデータを取り込むことができました。![結果](https://qiita-image-store.s3.amazonaws.com/0/152073/f1aaf2d0-8d01-b941-11fd-349113597e85.png)

一度読み込んでおくと、「更新」をクリックして最新のkintoneのデータを再読み込みすることができます。
なお、kintoneのAPIは1回のリクエストあたりのデータ取得件数の上限が500件なので、それを超える件数のデータを一括で取得するには、VBAによる対応などが必要になります。

## b-2. ExcelのVBAで読み込む
VBAでkintoneのデータを読み込むことができます。
Cybozu Developer Network「Excelとkintoneを連携させよう」
[第1回 Excelとkintoneを連携させよう](https://developer.cybozu.io/hc/ja/articles/201861390)
　→　記事が取り下げられたようです。

JavaScriptカスタマイズで、kintoneからボタン1つで直接Excelファイルに出力することもできます。
[kintoneから直接Excelファイルに出力する](https://developer.cybozu.io/hc/ja/articles/360001228426)

連携を楽にするためのVBAのクラスも公開されています。
かりんこラボ「kintone-Excel連携」
[kintoneとExcelを連携するためのVBAクラスを作りました！](https://caryncolabo.com/kintonedatareaderforvba/)

kindleの電子書籍の解説もあります。
[サイボウズkintone徹底活用研究：Excel連携編](https://www.amazon.co.jp/dp/B00UV83GPM)

## b-3. Excel連携サービス
サイボウズのパートナーからさまざまなExcel連携サービスが提供されています。

[CData Excel Add-In for kintone](https://www.cdata.com/jp/drivers/kintone/excel/)

[楽々Excel-kintone連携ツール](https://www.nsas.co.jp/excel_add-in.html)

[RepotoneU Excel](https://www.repotone.com/u/excel/)

[OPRO ドキュメントデザイナー for Office](https://spc.opro.net/hc/ja/articles/360012028534)

[kintone 楽々帳票](https://www.digital-serve.co.jp/product/kintone-report/)

[gusuku Customine](https://www.r3it.com/info/customine-newfeature-reporting-release)

#c. その他

## c-1. kintone コマンドラインツール
コマンドライン上からkintoneにデータのインポート・エクスポートをすることができます。
出力形式はExcelではなく、'json'もしくは'csv'が指定できます。
[はじめようkintoneコマンドラインツールシリーズ](https://developer.cybozu.io/hc/ja/articles/115000297083)

## c-2. kitoneの画面をExcelのように表示することもできます
「kintone スプレッドシート」プラグイン
[kintone スプレッドシートプラグインでExcelライクなUIを試してみよう！](https://developer.cybozu.io/hc/ja/articles/208458696)

## c-3. kintoneの一覧をExcelのような使い心地にすることもできます
サイボウズのパートナーから、Excelの操作性をkintoneで再現できるサービスが提供されています。
[krewSheet](https://krew.grapecity.com/products/krewsheet.htm)

## c-4. Zapier
ZapierでExcelとkintoneを連携できます。
[Excel + Kintone Integrations](https://zapier.com/apps/excel/integrations/kintone)