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

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

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

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

Q&A

解決済

1回答

508閲覧

GASとLINE公式アカウントで、見積もりシステムを作りたい

s.20

総合スコア10

Google Apps Script

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

0グッド

1クリップ

投稿2022/09/03 01:00

前提・実現したいこと

GAS・LINE公式です。
リフォーム業社で、LINEで見積もりと打つと、自動でユーザーIDがスプレッドシーとに記録されて、且つ、Googleフォームの送信内容が横に続いてスプレッドシートに記録されるシステムと、管理用で、Googleフォームに見積もりフォームに入力された電話番号と、送信メッセージを入力して送信すると、その相手にメッセージが届くシステムを作りたい。

発生している問題・エラーメッセージ

ネットで調べたけどコードの実装方法がわからなかった
丸投げみたいですけど一応ネットで調べたコードを書いてみます。

エラーメッセージ

なし

該当のソースコード

code.gs

1//LINEのアクセストークン 2var channel_access_token = "アクセストークン"; 3var headers = { 4 "Content-Type": "application/json; charset=UTF-8", 5 "Authorization": "Bearer " + channel_access_token 6}; 7 8//返信する 9function sendLineMessageFromReplyToken(token, replyText) { 10 var url = "https://api.line.me/v2/bot/message/reply"; 11 var headers = { 12 "Content-Type": "application/json; charset=UTF-8", 13 "Authorization": "Bearer " + channel_access_token 14 }; 15 var postData = { 16 "replyToken": token, 17 "messages": [{ 18 "type": "text", 19 "text": replyText 20 }] 21 }; 22 var options = { 23 "method": "POST", 24 "headers": headers, 25 "payload": JSON.stringify(postData) 26 }; 27 return UrlFetchApp.fetch(url, options); 28} 29 30//指定のuserIdにメッセージを送る 31function sendLineMessageFromUserId(userId, text) { 32 var url = "https://api.line.me/v2/bot/message/push"; 33 var postData = { 34 "to": userId, 35 "messages": [{ 36 "type": "text", 37 "text": text 38 }] 39 }; 40 var options = { 41 "method": "POST", 42 "headers": headers, 43 "payload": JSON.stringify(postData) 44 }; 45 return UrlFetchApp.fetch(url, options); 46} 47//スプレッドシート 48var spreadsheet = SpreadsheetApp.openById("スプレッドシートのID"); 49var sheet = spreadsheet.getSheetByName('スプレッドシートのシート名'); 50 51//受け取った日付の予定が記載されている行を返す 52function searchPlans(date) { 53 var data = sheet.getDataRange().getValues(); 54 var plans = []; 55 for (var i = 0; i < data.length; i++) { 56 if (data[i][0] == date) { 57 plans.push(i + 1); 58 } 59 } 60 return plans; 61} 62 63//列を指定してデータを取得する 64function getFromRowAndLine(sheetName, row) { 65 var data = sheet.getDataRange().getValues(); 66 return data[row - 1][1]; 67} 68 69//列を指定してデータを書き込む 70function setFromRowAndLine(val, row, line) { 71 sheet.getRange(row + 1, line + 1).setValue(val); 72} 73 74function getLastRow() { 75 return sheet.getLastRow(); 76} 77 78//日付と予定から行を削除する 79function deleteRowOfDateAndPlan(date, plan) { 80 var lastRow = getLastRow(); 81 for (var i = 1; i <= lastRow; i++) { 82 if (sheet.getRange(i, 1).getValue() == date && sheet.getRange(i, 2).getValue() == plan) { 83 sheet.deleteRows(i); 84 } 85 } 86} 87 88//指定の日付の行を削除する 89function deleteRowOfDate(date) { 90 var lastRow = sheet.getDataRange().getLastRow(); 91 for (var i = 1; i <= lastRow; i++) { 92 if (sheet.getRange(i, 1).getValue() == date) { 93 sheet.deleteRows(i); 94 } 95 } 96} 97

試したこと

ネットで調べましたがわかりませんでした。

補足情報(FW/ツールのバージョンなど)

参考URL
https://tech-blog.rakus.co.jp/entry/20200425/gas/line

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

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

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

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

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

y_waiwai

2022/09/03 01:05

提示のコードはどういう動作をするんでしょうか
s.20

2022/09/03 01:05

参考URLをご確認ください
s.20

2022/09/03 01:14

むやみに低評価・外部に依頼しろはご遠慮ください
guest

回答1

0

ベストアンサー

残念ながら、ここではコードの作成依頼は受け付けていません

まずはあなたなりにコードを書いてみましょう。その上でわからないことを聞いていただければお答えできるかと思います。

投稿2022/09/03 03:18

y_waiwai

総合スコア87774

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問