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

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

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

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

1144閲覧

GASで特定のURLにアクセスしたときに、スクリプトが実行されるようにしたい。

matilda12

総合スコア14

Google Apps Script

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

1クリップ

投稿2020/09/03 04:58

編集2020/09/03 05:01

出勤、退勤時にボタンを押せば現在時刻がスプレッドシートに登録されるスクリプトを組んだのですが、
スマーフォンではボタンを押下することができないことが判明し、困っております。

スマートフォンからスクリプトを実行する方法を調べていると、指定したURLにアクセスした際に、実行できる"doGet"メソッドがあることが判明したのですが、URLの指定の方法がわかりません。
(ここまでで、既に認識がズレていたら申し訳ありません。)

どうかご助力のほど、宜しくお願い致します。

追伸
URLへのアクセスをトリガーにした理由は、Googleアカウントを持っていない社員でも出勤、退勤時間が打刻できるようにしたかったからです。

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

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

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

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

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

guest

回答1

0

ベストアンサー

Web アプリケーションとして公開すれば、URLアクセスをトリガーにスクリプトを実行することができます。

具体的なWebアプリケーションの公開方法は公式ドキュメントが参考になります。英語ですが、Google翻訳など使えば割と自然な日本語に翻訳してくれるのでわかりやすいかと思います。

  • Web Apps | Apps Script | Google Developers

https://developers.google.com/apps-script/guides/web


(コメントへの回答を追記)

一つのスクリプトに、一つのURLを発行できるという認識で間違いないでしょうか。

一つのスクリプトに、一つのURLを発行できるという認識であっています。

また、各従業員によって出勤、退勤時間が記入されるシートを変える必要があるため、従業員数分のスクリプトを作成する必要があるということでしょうか。

https://script.google.com/macros/s/.../exec?userid=123&hokanoparam=abc

という、URLにGETアクセスされた場合、

JavaScript

1function doGet(e) { 2 const user_id= e.parameters.myparam1; // または e.parameters["userid"] 3 const hokano_param = e.parameters.hokanoparam; 4 5 //user_idに応じて処理 6 ... 7}

という感じでクエリパラメータを取得できるので、必要に応じてシート変えるなり、セルを変えるなりすれば可能です。

投稿2020/09/03 06:46

編集2020/09/03 07:17
draq

総合スコア2577

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

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

matilda12

2020/09/03 07:02

ご丁寧にURLまでつけて頂いてありがとうございます。 もし宜しければお答え頂きたいのですが、一つのスクリプトに、一つのURLを発行できるという認識で間違いないでしょうか。 また、各従業員によって出勤、退勤時間が記入されるシートを変える必要があるため、従業員数分のスクリプトを作成する必要があるということでしょうか。
draq

2020/09/03 07:18

コメントの質問について回答に追記しました。
matilda12

2020/09/03 07:54

従業員数分のURLを発行 各URLひとつひとつに目印となるパラメータを付与 パラメータによって処理を変えるスクリプトを作る 上記の理解で正しいでしょうか、、理解力不足で申し訳ありません。
draq

2020/09/03 08:09 編集

従業員を識別するID(例えば社員番号とか)をパラメータにつけてアクセスするのが簡単でしょう。 社員A(社員番号101)さんへは、 https://script.google.com/macros/s/.../exec?userid=101 社員B(社員番号202)さんへは、 https://script.google.com/macros/s/.../exec?userid=202 を案内するとか。 余談ですが、社員番号を間違えてアクセスした場合とか色々考える必要があるので、URLをアクセスで即更新はあまりいい手ではない気もします。あるていど運用でカバーするのも手ですが。
matilda12

2020/09/04 00:16

お返事が遅くなり申し訳ありません。 それはやはり従業員数分のパラメータを発行する。 という理解で良いでしょうか。 従業員はGoogleアカウントを持っておらず、個人のスマホ(会社支給でないもの)を使用するため、アクセスしたのが社員Aなのか、社員Bなのかという判断はできません。 ・余談について ご提案ありがとうございます。 あまり良い手ではありませんよね、、もし可能であればURLは一つだけにして、アクセスした際に社員番号を打ち込むポップアップが出るようにしたいのですが、そのような実装は可能でしょうか。
draq

2020/09/04 05:39

Googleアカウントがなんの関係があるのでしょうか?Googleアカウントにログインしていなくても(持っていなくても)アクセスできる様に設定できます。(※Googleアカウントへのログインを必須にもできる)余談へのコメントによると社員番号はあるんですよね?
draq

2020/09/04 05:53

> 余談について ポップアップというか社員番号を入力するWEBページを表示することはできます。(WEBページでポップアップ表示もできますが、普通はそんな仕様にしません。) 社員番号を入力させる方針にする場合は、新しい質問に分けた方がいいです。このままここで続けても他の人からの回答はつかないでしょうし。その場合、ある程度実装したうえで疑問点を質問しないと丸投げとみなされて低評価がつくことがあるので注意が必要です。
matilda12

2020/09/04 06:05

私の認識違いでありました。申し訳ありません。 入力された番号によって書き込むシートを変更するスクリプトを考えていました。 データベースやGoogleアカウントで社員番号を管理しているのではなく あくまで打ち込まれた社員番号(ただの文字列)によって判断し、 書き込むシートを変更するポップアップを出すことは可能なのか。という質問でありました。 言葉足らずで申し訳ありません。
draq

2020/09/04 06:18

それで回答に納得されたんでしょうか。まだ疑問点があるんでしょうか。
matilda12

2020/09/04 06:33

大丈夫です! ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問