シート (名前: 1) の値 (例: 1) を分析し、これらの行の値を別のシート (名前: 2) にこの値とともに投稿したいと考えています。
「値 (たとえば 1) を取得した列 F のすべてのセルを検索します。列 A、E、および G (F が 1 の場合) をコピーし、シート 2 の最後に投稿します。
私のスクリプトは、実際には 1 つの結果を投稿するだけです。手伝っていただけませんか?私はどんな種類のループも得られないと思いますか?
function checkWS() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
SpreadsheetApp.setActiveSheet(spreadsheet.getSheetByName("1"));
var sheet = spreadsheet.getActiveSheet();
// figure out what the last row is
var lastRow = sheet.getLastRow();
// the rows are indexed starting at 1, and the first row
// is the headers, so start with row 2
var startRow = 2;
// grab column 5 (the 'month left' column)
var range = sheet.getRange(2, 6, lastRow - startRow + 1, 1);
var numRows = range.getNumRows();
var soll_values = range.getValues();
// Now, grab the reminder name column
range = sheet.getRange(2, 1, lastRow - startRow + 1, 1);
var branch_values = range.getValues();
// and the count column
range = sheet.getRange(2, 7, lastRow - startRow + 1, 1);
var count_values = range.getValues();
var warning_count = 0;
var msg = "";
// Loop over the days left values
for (var i = 0; i <= numRows - 1; i++) {
var soll = soll_values[i][0];
if (soll == 1) {
// if it's exactly 1, do something with the data.
var name = branch_values[i][0];
var count = count_values[i][0];
warning_count++;
}
}
if (warning_count) {
var ss = SpreadsheetApp.openById("1vn4xTwdNk7E1Av4VNugtW6KWgZns2LzKS1lN1F6CTPw");
var Tab = ss.getSheetByName('2');
var lastRow = Tab.getLastRow();
Tab.getRange(lastRow + 1, 1).setValue(name);
Tab.getRange(lastRow + 1, 5).setValue(count);
Tab.getRange(lastRow + 1, 10).setValue(new Date());
SpreadsheetApp.flush();
}
}