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

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

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

M5Stackは、小型のマイコンモジュールです。拡張モジュールが豊富に用意されており、センサと組み合わせることで測定機能を自由に追加することができます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

0回答

1264閲覧

スプレッドシートの特定セルの数値が範囲を超えた場合、lineに自動でメールを送る。

rocketsoap

総合スコア0

M5Stack

M5Stackは、小型のマイコンモジュールです。拡張モジュールが豊富に用意されており、センサと組み合わせることで測定機能を自由に追加することができます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2021/12/17 15:12

スプレッドシートの特定セルの数値が範囲を超えた場合、lineに自動でメールを送る。

M5Stackで1時間毎に温湿度を測り、スプレッドシートに記録しています。その温湿度を基に不快指数を算出して記録までできています。
function doPost(e)関数を使ってデータを受け取り、不快指数が80を超えた時、lineNotifyで「不快指数が80を超えました。熱中症に注意してください」と自動でline通知が来るようにしたいです。
不快指数を出しているシートは'温湿度の集計シート'セルはF2です。ここに1時間に1回、不快指数の数値が入ってきます。

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

始めたばかりで本なども参考にしていますがF2のセルの数値が80以上の時、lineを自動で送りたいのですが、 sheet.getRange(2,6).getValues()などで数値を呼び出して計算したらいいのでしょうか、またその数値が超えた場合どういった処理を行えばlineを送ることになるのでしょうか。
質問が初心者すぎて申し訳ないのですが教えて頂きたいです。

該当のソースコード

function doPost(e) {
//var sheet = SpreadsheetApp.getActiveSpreadsheetByName( "data" ); //
var spreadsheet = SpreadsheetApp.openById( "1ybNhqog4CvP31CNABUKrc9qKXR-6m52ttyoIivC0iq0" ) ;
var sheet = spreadsheet.getSheets()[1] ; //
sheet.activate() ;
var jsonString = e.postData.getDataAsString();
var params = JSON.parse(jsonString);

// データをシートに追加
sheet.insertRows(2,1); // 2行目に行を追加
sheet.getRange(2, 1).setValue(new Date()); // 受信日時を記録
sheet.getRange(2, 2).setValue(new Date()); // 受信日時を記録
sheet.getRange(2, 3).setValue(params.Test_Temp); // テスト:温度
sheet.getRange(2, 4).setValue(params.Test_Hum); // テスト:湿度
sheet.getRange(2, 6).setValue((sheet.getRange(2, 3).getValue()0.81)+(0.01(sheet.getRange(2, 4).getValue())*((sheet.getRange(2, 3).getValue()*0.99)-14.3))+46.3);     // テスト:不快指数計算式

sheet.getRange(2,6).getValues().return [1]>80; sendHttpPost(e[0]);

   sendHttpPost(content)
const token = "LINEトークン";
const options =
{
"method" : "post",
"payload" : "message=" + content,
"headers" : {"Authorization" : "Bearer "+ token}

}; UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);

}
ここに言語名を入力
日本語

試したこと

function shiftReminder() {
// LINEで自動通知する内容。
var content = "不快指数が80を超えました";
content += "熱中症に注意してください。";
sendHttpPost_shiftReminder(content);
}

// LINE Notifyを利用するための関数
function sendHttpPost_shiftReminder(content){
var token = ['トークン']; //LINEで自動通知をする宛先のトークン。
var options =
{
"method" : "post",
"payload" : {"message": content,
},
"headers" : {"Authorization" : "Bearer "+ token}
};
UrlFetchApp.fetch("https://notify-api.line.me/api/notify", options);
}

このコードを実行するとラインには通知が来ます。80の設定値が超えた場合このコードにつながるようにしていくのがいいでしょうか、そもそも見当はずれなのでしょうか、
教えて頂けますでしょうか。

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

M5Stack、グーグルスプレットシート、GAS、ウェブアプリ作成、などを使用して作成しています。

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

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

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

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

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

jimbe

2021/12/18 01:16

コードのご提示にはマークダウン記法をご利用ください。 マークダウンにつきましてはヘルプをご参照ください。 また、ご利用の言語は java では無いようです。 ご質問につける言語のタグを間違えていますと、回答できる方に読んで頂ける可能性が減りますので、ご利用の言語を正しくタグとして下さい。
rocketsoap

2021/12/18 03:20

了解しました。ありがとうございます。
YAmaGNZ

2021/12/19 22:23

質問の内容から考えて、M5StackやjavaのタグではなくGoogle Apps Scriptのタグを使うべきかと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問