【コピペでOK】GoogleAppsScriptでGoogleスプレッドシートの値を取り出す

gas-spreadsheet

GoogleAppsScript(GAS)はプログラミング初心者でも簡単にプログラムを作ることができ、Googleのサービスとも簡単に連携することができます。本記事では、GASを使って、Googleスプレッドシートの値を取り出す方法をご紹介します。

Googleに魂を捧げつつある男性

スプレッドシートは無料で使えて便利だなあ でもマクロを使えないから単純な作業がめんどくさいなあ GoogleAppsScriptを使えば楽らしいけどどうやるんだろう。。。
こんな悩みにお答えします。

こんにちは、えびじゅんです。 今回はGoogleAppsScriptを使って、スプレッドシートの値を取得する方法をご紹介します!!

サンプルコード

お急ぎの方の為に、先のサンプルコードを公開します。 2パターンあるので、両方に対応するコード2種類を公開します。 どちらも、スプレッドシートのA1セルに書き込んで、取得するサンプルで 1行目以外同じです

スプレッドシートから作成したGooleAppsScript版

「スプレッドシート」→「ツール」→「スクリプトエディタ」の順でGASを作成すると すでにお互いが連携された状態でコードが作られます。 その時は、以下のコードで値を取得することができます。

function myFunction() {   var ss = SpreadsheetApp.getActiveSheet();   ss.getRange(“A1”).setValue(“test”);   var value = ss.getRange(“A1”).getValue();   Logger.log(value); }

先に作ったGoogleAppsScriptから新規スプレッドシートに接続する版

先にGASを作っていたけど、作業していく中でスプレッドシートを使いたくなった時用です。

function myFunction() {   var ss = SpreadsheetApp.openById(“スプレッドシートのID”)   ss.getRange(“A1”).setValue(“test”);   var value = ss.getRange(“A1”).getValue();   Logger.log(value); }

IDの取得方法がわからない方は、記事下部で解説しているのでご覧ください。 そもそもGASの使い方がわからない方はこちら↓

GoogleAppsScriptからスプレッドシートにアクセスする方法

まず初めに、GAS(GoogleAppsScript)からスプレッドシートにアクセスする方法をご紹介します。 方法としては

  • 初めからスプレッドシートと連携するGASを作成する
  • 途中から作ったスプレッドシートにアクセスする

の2つがあります。

初めからスプレッドシートと連携するGASを作成する

1つ目が、初めからスプレッドシートと連携するGASを作成することです。

スプレッドシートを作成する

まずは Googleドライブを開き、左上「新規」→「スプレッドシート」→「空白のテンプレート」から いつも通りスプレッドシートを作成します。 続いて、画面上部「ツール」→「スクリプトエディタ」を選択します。 すると、いつも通りGoogleAppsScriptのエディタが開きますね。 そしたら、スプレッドシート関数を使って、変数にスプレッドシートオブジェクトを代入します。 var ss = SpreadsheetApp.getActiveSheet(); これで、変数ssにスプレッドシートの中身が全て代入された形になります。

途中から作ったスプレッドシートにアクセスする

GASでアプリだけを作る予定だったけど、途中からデータベースとしてスプレッドシートを使いたくなったパターンです。 やり方としては、

  1. 新規スプレッドシートを作成
  2. GAS側で、作成したスプレッドシートのidを指定して変数に代入する。

といった感じです。 特に難しい部分はないと思います。 では、実際にやってみましょう ※スプレッドシートの作り方は先ほどと同じなので省略しますね

スプレッドシートのIDを取得する

スプレッドシートのURLを見ると https://docs.google.com/spreadsheets/d/ほにゃらら/edit#gid=0000000 という形式になっていると思います。 この/d/の後ろの「ほにゃらら」の部分がスプレッドシートのIDになります。 (ちなみに、このIDがバレると、自分のデータ保存場所を勝手に使われてしまうので 公開しちゃいけないですよ!)

GoogleAppsScriptでスプレッドシートを取得する

先ほどのスプレッドシートのIDを指定して、変数に代入します。 var ss = SpreadsheetApp.openById("スプレッドシートのid") 以上でおしまいです!! では早速、変数を使って、セルの中身を取得したり、セルに書き込んだりしてみましょう!!

スプレッドシートの値を取得する

では、変数を使ってスプレッドシートの値を取得していきます。 取得するための関数は、 var value = ss.getRange(“スプレッドシートの範囲”).getValue(); 単体のセルを指定するときは、getRange(“A1”) 範囲のセルを指定するときは、getRange(“A1:A3”)といった感じです。 これで変数valueに値が保存されます。

スプレッドシートに書き込む

最後に、セルに値を書き込む処理を解説します。 セルに書き込むためには、セルの範囲と、書き込む値を指定します 例えば、「A1」セルに「test」とい文字を書き込むためには ss.getRange("A1").setValue("test"); と書きます。 ちなみに、書き込み処理は変数に代入する必要はないですよ

もっと本格的にプログラミングを学びたい方へ

本記事では、GoogleAppsScriptとスプレッドシートを連携させる方法を紹介しました。 GoogleAppsScriptは比較的簡単な言語で 初心者でもすぐにプログラムを作ることができますが、出来ることがあまり多くはないです。

  • プログラミングに興味があるが何から学んでいいかわからない方
  • Webアプリケーション開発をやってみたい方
  • 以前プログラミングに挫折した方
  • 手軽な価格でメンターをつけたい初心者の方
  • エンジニアを目指す第一歩を踏み出したい方

はぜひこちら↓の記事を読んでみてください

プログラミングの独学、大変じゃないですか?

プログラミングを独学しているそこのあなた

  • 思い通りにプログラムが動かなくてイライラする
  • エラーをググってもなかなか解決策が見つからない
  • そもそも何から手をつけて良いかわからない

こんな悩みを抱えていませんか?

そんなあなたにおすすめなのが、メンターを雇えるサービス MENTA です

メンターとのマッチングがめちゃくちゃ簡単

MENTAを利用すれば、自分のやりたいことを丁寧に教えてくれるメンターと簡単に出会うことができます!

自分が覚えたいスキルセットを持ったメンターを探す

もしくは

自分が覚えたいスキルと予算を提示して、メンターからの連絡を待つ

たったこれだけです!

プログラミングスクールより格安の料金設定

料金はメンター次第ですが、月々1000〜5000円程度(中には0円でサポートしてくれるメンターも!!)

ebi
えび

プログラミングスクールの月額は平均3万円とされている中で、5000円程度でメンターを雇えるのはかなり格安です!!

ぜひMENTAを活用してスキルアップを目指しましょう!!

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください