皆さんは CSV 出力機能、利用されますか?
バックアップやアプリ移行、レコードの一括更新など、何かと使う場面は多いと思います。
ただこの CSV 出力、出力までに必要な手数が多くありませんか?
一覧のデータを少し Excel で加工したいだけなのに、いくつかの手順を踏んで、CSV の完成を待って、ダウンロードが開始されます。ちょっと手間ですよね。
そこで今回は、僕が開発した Excel 出力プラグインを紹介します。
標準では CSV でしか出力できない kintone ですが、xlsx 形式でファイル出力することができるボタンを一覧に追加するプラグインです。
使い方
アプリにプラグインを適用すると、一覧に画像のようなアイコンが追加されます。
アイコンをクリックすることで、現在表示しているフィールド・検索条件に合わせて、.xlsx 形式でファイルが出力されます。
複数の出力設定(プロファイル)を作成している場合は、表示しているビューに対応する設定が自動的に選択されます。
設定の変更
プラグインの設定画面は、以下のようになっています。
複数プロファイルの管理
設定画面左のサイドバーから、複数の出力設定(プロファイル)を追加・削除・並べ替えできます。それぞれのプロファイルで異なるビューや出力内容を設定し、状況に応じて使い分けることができます。
表示するビューの限定
ボタンを表示するビューを特定の一覧に限定できます。用途の異なるビューごとに別プロファイルを設定すれば、適切なボタンだけが表示されます。
レコード・フィールドの取得範囲
- 全レコード取得: 初期状態ではページネーションに関係なく一覧の絞り込み条件に合うすべてのレコードを取得します。チェックを外すと、現在表示中のレコードのみが対象になります。
- 全フィールド取得: チェックを入れると、一覧の表示設定に関わらずアプリの全フィールドを出力します。チェックを外すと、一覧に表示されているフィールドのみが対象になります。
出力フィールドの個別指定
「出力フィールドを個別に設定する」を有効にすると、出力するフィールドをドラッグ&ドロップで自由に並べ替え・追加・削除できます。Excel の列順を一覧表示とは別にカスタマイズしたい場合に活用してください。
ファイル名・シート名のカスタマイズ
変数を使ってダウンロードされるファイル名とシート名をカスタマイズできます。利用可能な変数は以下の通りです。
| 変数 | 内容 |
|---|---|
{appName} | アプリ名 |
{appId} | アプリ ID |
{date} | 出力日 (YYYYMMDD) |
{time} | 出力時刻 (HHmmss) |
日付の Excel 形式出力
「日付を Excel のシリアル値形式で出力する」を有効にすると、日付・日時フィールドが Excel のネイティブな日付型として出力されます。Excel 上でのソートや計算式に日付値を活用したい場合に便利です。
サブテーブルへの対応
サブテーブルを含むアプリでは、サブテーブルの行数に応じて行が展開され、適切なセル結合が適用されます。「サブテーブル非関連フィールドをマージする」オプションを有効にすると、サブテーブルに関連しないフィールドのセルを縦方向に結合して出力できます。
設定のエクスポート・インポート・リセット
設定画面下部のボタンから、現在のプロファイル設定を JSON ファイルとしてエクスポートしたり、以前にエクスポートした設定をインポートしたりできます。また、設定を初期状態に戻すリセットボタンも用意されています。
プラグインのソースコード
当プラグインはオープンソースです。 プラグインがどういったファイルで構成されているのか、どのように実装されているのか、全てのプログラムを Github から確認することが可能です。
プラグインのソースコードを確認されたい方は、当ページトップの「ソースコードを確認する」ボタンからプラグインのリポジトリにアクセスすることができます。
リリースノート
出力フィールドをドラッグ&ドロップで並べ替え・個別選択できるように対応
プラグイン設定のエクスポート・インポート機能を追加
設定をデフォルトにリセットするボタンを追加
日付・日時フィールドをExcelのシリアル値形式で出力するオプションを追加
複数の出力設定(プロファイル)を作成・管理できるサイドバーを追加
ボタンを表示する一覧を特定のビューに限定できる機能を追加
出力するファイル名とシート名を変数を用いてカスタマイズできるように変更
出力されるシートのレイアウトおよびスタイルの改善
数値フィールドおよび日付フィールドをExcel上で適切な形式で出力するように修正
ダウンロードされたxlsxの列が、一覧の表示順に従うように修正