デジタル推進課

KNIME・Excel Macro・Power Automateなど日々の業務で使用できる自動化ツールを中心に書き綴ります

KNIME - Google Spread Sheet をKNIMEで使うには? ~Google Sheets Connection / Google Sheets Reader Writer~

 f:id:makkynm:20210325085237p:plain

 

はじめに

 今回は、KNIMEでGoogle Spread Sheetを読み込んで書き出してみたいと思います。グーグルスプレッドシートを使えればOfficeのライセンスがなくても使えるのでとても便利ですよね!

  

 今回のテーマ ~Google Sheets~

f:id:makkynm:20210324075139p:plain

 今回のテーマ ~Google Sheets~

workflowは下記からダウンロードできます。

hub.knime.com

 

覚えてほしいこと

Google Spread SheetもExcelも使い方は変わらない

 

やりたいこと

今回は、Google Drive上においたGoogle Spread Sheetを読み込んで、初級編で行った作業と同じことをやりたいと思います。

Joinerで行った作業までです。

degitalization.hatenablog.jp

 

事前準備 

Googleスプレッドシートを用意

事前に社員表と勤怠表のスプレッドシートを用意しておきました。

マイドライブ>Blog>KNIME InputFiles

という階層にファイルを保存してあります。

f:id:makkynm:20210324082149p:plain

事前準備 - Google スプレッドシートを用意

 

リンクを貼っておきますので、参考にしてみてください。

SampleData_勤怠表 - Google スプレッドシート

SampleData_社員表 - Google スプレッドシート

f:id:makkynm:20210324082714p:plain

事前準備 - Google スプレッドシートを用意

f:id:makkynm:20210324082626p:plain

事前準備 - Google スプレッドシートを用意

 

Google Authentificationでアカウント認証

これは前回やった内容です。 Configureのスクリーンショットだけ載せておきます。

degitalization.hatenablog.jp

 

f:id:makkynm:20210324082954p:plain

Configure - Google Authentification

Google Sheets Connectionでスプレッドシートを読み込みます宣言

Google SheetのReaderやWriterを使用する前に、Google Sheets ConnectionというNodeを使用して、Google スプレッドシートを使いますよーという宣言が必要です。

ただ繋ぐだけで、何も設定は必要ないです。

f:id:makkynm:20210324083601p:plain

Google Sheets Connection

f:id:makkynm:20210324083632p:plain

Configure - Google Sheets Connection

 

 

Google Sheets Reader / Google Sheets Writer の使い方

Google スプレッドシートを読み込む・書き込むためのNodeです。

 

Install - 前準備

このNodeはデフォルトではインストールされていません。追加でインストールする必要があります。まだこんなNode、自分のKNIMEにはないぞ!?と言う方はまず先に下記の記事をご覧ください。

degitalization.hatenablog.jp

 

Workflow

注目していただきたいのは、黒い矢印になってからは、Excelの処理と同じという点です。

ファイルがCSVであれ、Excelであれ、Googleスプレッドシートであれ、一旦KNIMEに読み込んでしまえば、同じWorkflowでOKという点が非常に便利ですよね。

Google Sheets Readerは、Google Sheets Connectionと繋ぐだけです。

Google Sheets Writerは、書き出したいTableを繋ぐとともに、Google Sheets Connectionに繋いでください。

もし他のアカウントのマイドライブ上に出力したい場合は、別のGoogle AuthentificationとGoogle Sheets Connectionを用意してください。

f:id:makkynm:20210324075139p:plain

Workflow - Google Sheets Reader / Google Sheets Writer

Confirm

Confirm - Google Sheets Reader

Google Sheets ReaderのOutputをお見せします。Excelの時と見比べてみてください。全く同じだと思います。

f:id:makkynm:20210324084133p:plain

Google Sheets Reader - 勤怠表

f:id:makkynm:20210324084157p:plain

Google Sheets Reader - 社員表
Confirm - Google Sheets Writer

書き出される場所は、マイドライブ直下になります。

f:id:makkynm:20210324090011p:plain

Confirm - Google Sheets Writer

 

Configure - Google Sheets Reader

まずはGoogle Sheets Readerです。解説する部分はExcel Readerより少ないです。

f:id:makkynm:20210324084730p:plain

Configure - Google Sheets Reader
Step1 - SpreadSheet - 読み込みたいスプレッドシートを選択

まずは読み込みたいスプレッドシートを選択します。

Selectをクリックすると、階層に関係なく、認証したアカウントが閲覧権限を持っているGoogleスプレッドシートが全て表示されます。

f:id:makkynm:20210324085054p:plain

Step1 - SpreadSheet - 読み込みたいスプレッドシートを選択

 

Step2 - Sheet 読み込みたいシートを選択

次にSheetを選択します。Sheet名の部分をクリックすると、ドロップダウンで選択することが可能です。

また、Open in Browserをクリックすると、ブラウザでStep1で選択したスプレッドシートを開くことができます。

 

Step3 - Option 読み込みたい部分を選択

最後に読み込みオプションです。下記がそれぞれの意味です。

  • Range - 読み込み範囲を指定できます。(例 "A1:G20")
  • Has column Header - 列ヘッダが1行目にある場合、チェックを入れます。
  • Has Row Header - 行ヘッダが1列目にある場合、チェックを入れます。

 

Configure - Google Sheets Writer

次にGoogle Sheets WriterのConfigureをみていきます。基本的には、Excel Writerと変わりません。

f:id:makkynm:20210324090257p:plain

Configure - Google Sheets Writer
Step1 - SpreadSheet Settings - ファイル名の指定

まずはファイル名とシート名を指定します。

Step2 - Write Settings - 出力設定

次に出力設定です。下記がオプションです。

  • Add column header - 列ヘッダを出力したい場合チェックを入れます。
  • Add row header - 行ヘッダを出力したい場合チェックを入れます。
  • For missing vlaue write - 欠損値を特定の値で埋めたい場合はここに入力します

 

Step3 - 出力コラムの設定

最後に出力したいコラムを設定します。出力したいコラムをIncludeの方に移しましょう。

Open Spread Sheet after executionにチェックを入れると、出力完了した後に自動的にスプレッドシートを開きます。

 

 ちょっと一言

共有されたスプレッドシートも読み込める

上にも書きましたが、マイドライブにあるスプレッドシートだけでなく、自分がRead権限を持っているスプレッドシート(自分に共有されたスプレッドシート)であれば読み込めます。

例えば、下記の海外ノーコードツール一覧というスプレッドシートは、閲覧権限のみ付与されていただいたものですが、読み込むことができます。ちなみにこの一覧にはKNIMEは載っておりません笑

f:id:makkynm:20210324081351p:plain

共有されたスプレッドシートも読み込める

 

デメリット・分からなかった点

下記の点、私は分からなかったのですが、知っている方いたら教えてください。2021年3月現在下記の点ができませんでした。

上書き保存ができない

上書き保存したかったんですが、なぜか実行のたび同じ名前で新しくファイルが生成されていきます。

解決した方、コメントお待ちしております。

f:id:makkynm:20210324080803p:plain

上書き保存ができない

 

指定のパスに書き出せない

指定の階層に出力できないです。

例えば、マイドライブ下のBlogというフォルダの下に書き出したいと思っていても、マイドライブ直下のフォルダにしか書き出せないようです。

f:id:makkynm:20210324081032p:plain

指定のパスに書き出せない

 

おわりに

お疲れ様でした。長々と解説しましたが、結局Excel Readerと同じですし、むしろ簡単ですよね。スプレッドシートを使えば他人と共有できるのもいいですよね。

ぜひ使ってみてください!また私の分からなかった部分、ご存知の方ぜひコメントお待ちしております。

ではまた!

 

 

余談 

先週の土日は全てエヴァンゲリオンに費やしました。。ついに完結ということできちんと前回までの話と解説を見た後に劇場版を見にいきましたが、こんな奥が深かったのか!と感動してます。

高校の時だったかに見た記憶があるんですが、その時は全然意味わかってませんでした。ロボかっこいいなーくらいですね。これを大人になって見ると、内容がかなり理解できたので楽しみ方が全然違いました!自身の成長を感じました笑

ぜひ昔観て分からなかった方、全然観たこともない方、一度一気観してはどうでしょうか。

Prime会員であれば無料で視聴できますよ!

www.youtube.com

KNIMEに関する本

KNIMEに関する日本語の本って今これくらいしかないと思うんですよね、、

本がいいなーと言う人はぜひ試してみてください。

 

参考リンク