GASで実行ボタンを作成しよう!グレーアウトや押せない問題をスマホで解決する方法

GASで実行ボタンを作ったんだけど、よくグレーアウトして押せないんだ…スマホでも同じ問題が。どうにか解決できないかな…
猫男
猫男
catman
catman
心配するな、新人。catmanがそのGAS 実行ボタンの謎を解明してやろう!まずは少しずつ基本から押さえていこう。

GASで実行ボタンを作成する基本

まず、GoogleスプレッドシートでGAS 実行ボタン 作成の準備をしよう。スプレッドシートでマクロを利用するとボタンを作ることができる。

スクリプトエディタの起動と関数作成

GASではJavaScriptライクに関数を使うことでボタンを動作させることができる。


function simpleAction() {
  SpreadsheetApp.getActiveSheet().getRange('A1').setValue('Hello, GAS!');
}

function simpleAction(): これは新しい関数を定義する。
SpreadsheetApp.getActiveSheet().getRange(‘A1’): アクティブシートのA1セルを取得。
setValue(‘Hello, GAS!’): A1セルに’Hello, GAS!’の文字列を設定。

これでA1セルに値が入るんだね。ボタンと一緒に設定するには?
猫男
猫男

スプレッドシートにボタンを追加

シート上にボタンを配置して、そのボタンに先ほど作成した関数を紐付けよう。

  1. スプレッドシートを開く。
  2. 「挿入」メニューから「図形描画」を選択してボタンを描画。
  3. 描画したボタンを右クリックして「スクリプトを割り当て」を選択。
  4. 関数名 ‘simpleAction’ を入力して保存。
catman
catman
簡単な結び付けだが、これでクリックすると実行されるようになるだろう。

GAS 実行ボタンがグレーアウトする問題の解決方法

時々、ボタンが反応しない、押せない、表示さえされないといった不具合に苦しむことがある。

よくある原因と対策

グレーアウトや押せないという問題の原因と解決策をいくつか見てみよう。

  • シートの保護設定: ボタンやセルが保護されていると反応しない。
    – 解決策: シートの保護設定を確認し、解除する。
  • スプレッドシートの更新: Google スプレッドシートがうまく同期されていない可能性。
    – 解決策: シートをリロードするか、アプリを再起動する。
  • アカウントのログアウト: アカウントの不具合でボタンが機能しない。
    – 解決策: 一度ログアウトしたのち、再度ログインする。
これでボタンがちゃんと動くはずだね。でも、スマホでも確認したいんだけど、解決方法がある?
猫男
猫男
catman
catman
ああ、スマホでの対応は別途注意がいる。特にブラウザとアプリでの動作の違いを知っておくといい。

スマホでのGAS 実行ボタンの設定と確認

スマホのブラウザとGoogle スプレッドシート アプリでのGAS 実行ボタン 押せない問題を解決しよう。

  • ブラウザの確認: スマホでブラウザを用いる場合は、ブラウザの最新バージョンを使用し、キャッシュをクリアする。
  • Google スプレッドシート アプリ: アプリではGAS自体が動作しない場合があるため、力技だがブラウザでの利用を推奨する。

練習問題

以下の内容を実践し、自分のスプレッドシートで試してください。

  1. GASで新たに’Hurray!’とセルに記入する簡単なスクリプトを作成する。
  2. スプレッドシート上のボタンに作成した関数を割り当てる。
  3. スマホのブラウザで実行し、正しく動作するか確認する。

解答・解説

スクリプトを以下のように記述します。


function celebrate() {
  SpreadsheetApp.getActiveSheet().getRange('B1').setValue('Hurray!');
}

function celebrate(): 新しい関数でアクションを定義。
getRange(‘B1’): B1セルを指定し。
setValue(‘Hurray!’): セルに’Hurray!’と表示する。

なるほど、身近なところで試してみて、スマホでも動くようになればいいな。さっそくやってみよう!
猫男
猫男
catman
catman
うむ、その意気だ。実践を繰り返し、GAS 実行ボタンを自在に扱えるようになれ!