🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Google Apps Script

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

Q&A

1回答

714閲覧

Google Apps Script と LINEの連携

yato337

総合スコア4

Google Apps Script

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

0グッド

0クリップ

投稿2019/12/17 02:32

現在Google Apps ScriptとLINEをIFTTTで連携しようと考えており、こちらのウェブサイトをのコードをコピーしてとりあえず動かそうと思っているところです。

https://tadaken3.hatenablog.jp/entry/not-quit-easily

その際、エラーが起きます。当方GASは初心者なため、原因がわかりません。シートの最終行に経過日を計算する式をセットする欄のgetDataRangeがエラーと表示されます。シート名とLINEトークンなどはしっかり記載しています (ここではOOOOOと表示させていただきます)。 よろしくお願いします。

TypeError.nullのメソッド「getDataRange」を呼び出せません。(行26、ファイル「経過日数」)

var ss = SpreadsheetApp.getActiveSpreadsheet(); //スプレッドシートを取得 var sheet = ss.getSheetByName("OOOOOOOo"); //シートを取得 function main(){ setFormuraLastRow() var maxRow = sheet.getDataRange().getLastRow(); var passDate = sheet.getRange(maxRow,3).getValue(); var message =""; //経過日が3日もしくは7日以上だったらLINEに通知を送る if (passDate==1 || passDate>=1){ message = "最後の勉強から"+ passDate + "日経過しました"; sentToLine(message); } } //IFTTTの日付形式から通常の日付に変換 function toDateFromIFTTT(str){ str = String(str); str = str.replace(/at.*/,"") d = new Date(str); return d; } //シートの最終行に経過日を計算する式をセットする function setFormuraLastRow(){ var maxRow = sheet.getDataRange().getLastRow(); var str = sheet.getRange(maxRow,1).getValue(); var code = '=TODAY() - TO_DATE(B'+ maxRow+')'; sheet.getRange(maxRow,2).setValue(toDateFromIFTTT(str)); sheet.getRange(maxRow,3).setFormula(code); } //LINEに通知を送る関数 function sentToLine(message){ var token = "OOOOOOOOOOOOO"; var options = { "method" : "post", "payload" : "message=" + message, "headers" : {"Authorization" : "Bearer "+ token} }; UrlFetchApp.fetch("https://notify-api.line.me/api/notify",options); }

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

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

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

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

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

guest

回答1

0

そのエラーの感じだと、シート名が間違ってます。

投稿2019/12/19 07:53

macaron_xxx

総合スコア3191

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問