質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

解決済

1回答

1001閲覧

ボタンクリックによる特定セルの値の更新(GASとHTMLの連携)

3_April_2021

総合スコア48

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

0クリップ

投稿2021/04/23 06:25

編集2024/06/22 02:56

ボタンをクリックするとシートの指定された部分に「a」を入力したい。


Googleスプレッドシートのボタンをクリックしても、指定されたセルに値が入力されない。2つの異なるアプローチは期待通りに動作しませんでした。

1.doGet()関数を除いたスクリプトをスクリプトタグの間に挿入します。また、button要素のonclick属性に"onButtonClick()"を指定します。
結果:ボタンをクリックすると、「a」が表示されます。
スクリプトタグの間にfunction onButtonClick(){console.log("a");}を挿入するとクリックのタイミングで「a」を確認できることから、スクリプトタグの間に問題があると予想されます。
2.button要素のonclick属性に<? buttonClick() ?>を指定します。
結果:doGet()が実行されると、目的の場所に「a」が表示されます。

function doGet() { const template = HtmlService.createTemplateFromFile("test"); return template.evaluate(); } function onButtonClick() {  setSheetValue("data", 1, 1, "a"); } function getSheetRange(sheetName, rowNum, colNum){ const activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet(); const targetSheet = activeSpreadsheet.getSheetByName(sheetName); const targetRange = targetSheet.getRange(rowNum, colNum); return targetRange; } function setSheetValue(sheetName, rowNum, colNum, value){ getSheetRange(sheetName, rowNum, colNum).setValue(value); }
<head>  <script> </script> </head> <body> <button type="button">ボタン</button> </body>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

html側から直接アクセスはできないと思います。

このあたりを参考にしていただけると!
HTML側⇔GAS側で通信する

gs

1 2setValue(value){ 3 console.log(value) //console.log => 引数 4 //[todo]ここにスプレッドシートへ書き込む処理を記入 5} 6

html

1<body> 2 <button type="button" onclick= "buttonClick("引数")">button</button> 3</body> 4 5<script> 6  function buttonClick(value){ 7  google.script.run.setValue(value) 8  } 9</script>

投稿2021/05/15 03:00

編集2021/05/15 03:01
Tatsunosuke

総合スコア599

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問