定期的に取得するデータから指定範囲のみを折れ線グラフで表示したい

前提

esp32を使用して定期的に発信されるデータをスプレッドシート上に記録しています。
次に取得したデータから、指定範囲を棒グラフで表示させようと考えています。

ソースコードは作成したのですが、初心者のためエラーが乗り越えれません。

実現したいこと

日時を指定セルに入力し、スクリプトを実行したら指定日時のみのグラフが表示される

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

構文エラー: SyntaxError: Unexpected token ';' 行: 4 ファイル: コード.gs

該当のソースコード

function findRow(sheet,val,col){
var dat = sheet.getDataRange().getValues();

for(var i=1;i<dat.length;i++){ if(String(dat[i][col-1]) == String(val)){ return i+1; } } return 0;

}

function makeGraphData() {

var objSpreadsheet = SpreadsheetApp.getActiveSpreadsheet(); var graphSheet = objSpreadsheet.getSheetByName("graph"); var dataSheet = objSpreadsheet.getSheetByName("data"); dataSheet.unhideRow(dataSheet.getRange("A1:A")); // グラフの非表示を解除 var startValue = graphSheet.getRange("B2").getValue(); // 開始日の値を取得 var endValue = graphSheet.getRange("D2").getValue(); // 終了日の値を取得 var str_row = 0; var end_row = 0; str_row = findRow(dataSheet,startValue,1) if(0 == str_row){ Browser.msgBox("開始日の値がデータ範囲外です", Browser.Buttons.OK); return -1 } end_row = findRow(dataSheet,endValue,1) if(0 == end_row){ Browser.msgBox("終了日の値がデータ範囲外です", Browser.Buttons.OK); return -1 } dataSheet.hideRow(dataSheet.getRange("A"+(end_row+1)+":A"+dataSheet.getLastRow())); dataSheet.hideRow(dataSheet.getRange("A2:A"+(str_row+1)));

}

試したこと

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

コメントを投稿

0 コメント