スプレッドシート ✖️ GAS ✖️ kintone
最近ほんとに良く耳にするkintone。
データの収集や整理、業務改善ツール、案件管理や勤怠管理・・・
柔軟性・拡張性・汎用性などを兼ね備えた優れものサービス。
今回は結構な頻度で利用している、Googleスプレッドシートからkintoneへのデータ連携について記載します。
意外とピンポイントでのやり方ってすぐに出てこないもんですね!
本記事はこんな方におすすめ
・kintone利用中
・GASを触った事がある
・Googleスプレッドシートの内容にちょい加工してkintoneに取り込みたい
やりたい事
・Googleスプレッドシートの内容をkintoneに取り込みたい
・取り込み時にちょいデータ加工してkintoneに取り込みたい
手順(4Step)
たったの4Stepです!!!
1. kintoneアプリの準備
2. Googleスプレッドシート作成
3. GASの作成
4. Googleスプレッドシートから実行
手順1 kintoneアプリの準備
アプリを作成(サンプルでNo/Name/Ageのフィールドを用意)
アプリの設定 > APIトークン でトークンの生成
手順2 : Googleスプレッドシート作成
$C1 : kintoneアプリID (手順2で準備したアプリのID)
$D1 : kintone APIトークン (手順2で生成したAPIトークン)
2行目 : データヘッダ
3行目以降 : kintoneに登録したいデータ
手順3 GASの作成
Googleスプレッドシートのメニューからスクリプトエディタを起動
プロジェクト名や関数名、処理を記述
実際のサンプルコードはこちら
function insertToKintone() {
const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
const sheet = spreadsheet.getActiveSheet();
let startRow = 3;
let lastRow = sheet.getLastRow();
let resultArray = [];
let insertData = '['
let appId = sheet.getRange(1, 3).getValue()
let token = sheet.getRange(1, 4).getValue()
for(let i = startRow; i <= lastRow; i++) {
if (i > startRow) {
insertData += ',';
}
insertData += Utilities.formatString('{"No": { "value": "%s"}', sheet.getRange(i, 1).getValue());
insertData += ',' + Utilities.formatString('"Name": { "value": "%s" }', sheet.getRange(i, 2).getValue());
insertData += ',' + Utilities.formatString('"Age": { "value": "%s" }}', sheet.getRange(i, 3).getValue());
}
insertData += ']';
let records = JSON.parse(insertData);
if (records.length) {
var apps = {
YOUR_APPLICATION1: {
appid: appId,
token: token
}
};
var kintoneManager = new KintoneManager.KintoneManager("xxxxx", apps); // subdomain
var response = kintoneManager.create("YOUR_APPLICATION1", records);
var code = response.getResponseCode();
Logger.log("code", code);
}
}
kintoneライブラリの読み込み
プロジェクトキー:MDT2NQ9jkAGYJ-7ftp_A0v08CaFRWuzzx
手順4 Googleスプレッドシートから実行
手順3で作成したGASノの処理を実行する為のボタンを作成します!
挿入 > 図形描画
保存して終了したら、スプレッドシートに図形が表示される
ボタンメニュー表示(mac:2本指クリック / windows:右クリック)
(たての・・・です)
スクリプトの割り当て
手順3で作成したGASの関数名を記述(insertToKintone)
最後に「kintone登録」ボタンをクリック
kintoneアプリの確認
以下の通り、スプレッドシートに記載したデータが登録されています。
拡張性
今回のサンプルでは、Googleスプレッドシートの項目をそのままkintoneに登録しましたが、手順3の中で書いたGASのfor文処理で、Googleスプレッドシートから読み込んだデータに加工する事で柔軟な対応が可能となります!
まとめ
いかがでしたでしょうか?
単純にGoogleスプレッドシートの内容をそのままkintoneに登録するだけなら、Googleスプレッドシートをエクセル/CSVに出力して、kintoneにImportすれば良いだけですが、登録時にデータを加工する場合には、上記のような少なく簡単な手順で実現する事ができます。
この記事が気に入ったらサポートをしてみませんか?