ExcelにTulipテーブルデータをインポートする

まず、API経由でTulipテーブルにアクセスするために、ボット機能を有効にします。

 

  1. Tulip(https://[貴社インスタンス].dmgmori-tulip.com)にアカウント所有者でログインします。
  2. 右上のユーザーアイコンより、[設定]をクリックし、左ペインより[ボット]をクリックします。
  3. 右上の[ボットを作成]をクリックし、名前を入力し、必要な権限を選択し、[作成]をクリックします。
  4. APIキー、シークレット、認証ヘッダーが表示されますので、保存の上、ウィンドウを閉じます。

次に、ExcelのPower Queryより、Tulipテーブルを読み込みます。

  1. Excelを起動します。
  2. [データ]-[データの取得]-[Power Queryエディターの起動]をクリックします。
  3. [新しいソース]-[その他のソース]-[空のクエリ]をクリックします。
  4. 左ペインに作られたクエリを選択し、詳細エディターをクリックします。
  5. クエリのテキストフィールドに下記クエリをコピー&ペーストします。
    (TulipTableId as text) as table=>
    let
    Query = #table( type table [#"TulipTableId" = text], { {TulipTableId}}),
    Function = Table.AddColumn(Query, "Offset", Number.Round(Json.Document(Web.Contents("https://[貴社インスタンス].dmgmori-tulip.com/api/v3/tables/"& TulipTableId &"/count"))/100)),
    ExpandedOffset =Table.ExpandListColumn(Function, "Offset"),
    NbLoop=Number.Round(Json.Document(Web.Contents("https://[貴社インスタンス].dmgmori-tulip.com/api/v3/tables/"& TulipTableId &"/count"))/100),
    TableOffset=Table.FromList(List.Transform({0..NbLoop},each Number.ToText(_*100))),
    TableOffset1=Table.RenameColumns(TableOffset,{{"Column1", "Offset"}}),
    TulipTable= Table.AddColumn(TableOffset1, "Records", each Table.FromRecords(Json.Document(Web.Contents("https://[貴社インスタンス].dmgmori-tulip.com/api/v3/tables/" & TulipTableId & "/records?limit=100&offset="& [Offset] &"&sortBy=_sequenceNumber&sortDir=asc"))))
    in
    TulipTable
  6. 詳細エディターに貼り付けると、下記のような画面となります。
  7. 上記クエリの[貴社インスタンス]部分を3か所書き換え、[完了]をクリックします。
  8. TulipTableIdのテキストボックスにデータ取得したいテーブルIDを入力し、[呼び出し]をクリックします。
    ※テーブルIDは、テーブルを表示した時のURLの最後の部分「…/tables/[テーブルID]」です。
  9. 認証が必要となるので、ボットのAPIキーおよびシークレットを設定します。認証方式は「基本」を選択し、ユーザー名にAPIキー、パスワードにシークレットを入力します。
  10. 「データのプライバシーに関する情報が必要です。」と表示された場合、[続行]をクリックします。プライバシーレベルが表示された場合、プルダウンメニューより「組織」を選択します。
  11. Recordsの右にある←→ボタンをクリックし、表示したい列にチェックを入れ、[OK]をクリックします。
  12. テーブルレコードが表示されます。
  13. 画面左上にある[閉じて読み込む]をクリックすると、Excelに読み込まれます。

以上