GoogleスプレッドシートのIMPORTRANGEで複数ファイルを結合

先日、IFTTTというWebサービスを使って、IoTデバイスで測定したデータを、Googleスプレッドシートに保存するためのアプレットを作りました(記事は こちら)。

このアプレットでは、測定したデータを、スプレッドシートにどんどん追記していきますが、シートの行数が2000行になると、続きは新しいファイルに書き込まれます(新しいファイルのファイル名は、元のファイル名の末尾に「(とおし番号)」がついた名前になります)。

一方、Googleスプレッドシートそのものは、最大500万セルまで保管できます(2019年11月時点の情報)。3列のシートならば、約167万行になる計算です。

シートそのものには沢山のデータが保管できますので、複数ファイルに分かれているデータを1ファイルにまとめておいた方が、データ分析などがやりやすくなります。

そのため、ここでは、IFTTTで別ファイルに保管されたデータを、ひとつのファイルに結合する手順を説明します。

なお、ファイルの結合には、スプレッドシートの「IMPORTRANGE」という関数を使います。IMPORTRANGEは、指定したスプレッドシートから指定範囲のセルを読み込む関数です。

データの結合手順は以下のとおりです。

  • Googleスプレッドシートのトップページ(https://sheets.google.com)にアクセスします。Googleアカウントにログインしていれば、自分のスプレッドシートページが開きます。今回は「device01_table」という名前のファイルが、とおし番号「なし」から「15」までの、合計16ファイルできています。

  • あらかじめ、それぞれのファイルのURLを確認しておきます。別途「メモ帳」を開きます。「device01_table」を古いものから順番に開き、それぞれのURLをメモ帳にコピペします。以下のようになります。

  • 各行の先頭と末尾に、以下のとおり追記しておきます。

  • 「新しいスプレッドシートを作成」>「空白」をクリックして、新しいシートを開きます。ファイル名を「device01_table(結合)」に変更しておきます。

  • D〜Z列を選択した状態で右クリックし、「列D – Z を削除」を選択します。

  • 列数が3列のシートができました。

  • メモ帳の1行目の記述を、セル「A1」の場所にコピペします。「A1」セルが「#REF!」となります。そこにカーソルを持っていくと、以下のようなメッセージが表示されますので、「アクセスを許可」をクリックします。

  • 「A1」〜「C2000」のセルに、データが挿入されました。

  • セル「A2001」に、メモ帳の2行目の記述をコピペします。先ほどと同様に、「A2001」セルが「#REF!」となるので、そこにカーソルを持っていき、「アクセスを許可」をクリックします。

  • 同様の処理を、全16ファイル分繰り返します。以下のとおり、2000行 × 16ファイル = 32000行のファイルができました。

 


このサイトで書いている、Googleスプレッドシート、IFTTTなどのWebサービスに関するブログ記事を、「さとやまノート」という別のブログページに、あらためて整理してまとめました。

Webサービスに関するその他の記事にも興味のある方は「さとやまノート」をご覧ください。