2016-06-20 1 views
0

값 (예 : 1)에 대한 시트 (이름 : 1)를 분석하고이 행의 일부 값을이 다른 시트의 값 (이름 : 2).Google 스프레드 시트 스크립트 - 값 (1)에 대한 표 분석 및 다른 값으로이 행의 여러 행 게시

"값을 가지고 열 F에있는 모든 세포를 검색 (예 : 1). 복사 열 A, E 및 G (F 인 경우 1)과 시트의 말에 게시 2.

내 스크립트 다만 실제로 하나 개의 결과를 게시 당신이 좀 도와 주 시겠어요 난 그냥 루프의 어떤 종류를 얻을 해달라고 생각 지금은 내가 조금 도움의-coloumn와 함께 일을 끝낼

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(); 
 
    } 
 

 
}

답변

0

를.?. :

function checkWS() { 
    var spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); 
    SpreadsheetApp.setActiveSheet(spreadsheet.getSheetByName("NAME")); 
    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 = 6; 

    // grab date (the 'month left' column) 
    var range = sheet.getRange(6, 54, lastRow - startRow + 1, 1); 
    var numRows = range.getNumRows(); 
    var soll_values = range.getValues(); 

    // Now, grab the branch column 
    range = sheet.getRange(6, 11, lastRow - startRow + 1, 1); 
    var branch_values = range.getValues(); 

    // and the count column 
    range = sheet.getRange(6, 49, 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) { -> not needed 
     var ss = SpreadsheetApp.openById("ID"); 
     var Tab = ss.getSheetByName('NAME_other_ss'); 
     var lastRow = Tab.getLastRow(); 

     Tab.getRange(lastRow + 1, 10).setValue(name); 
     Tab.getRange(lastRow + 1, 14).setValue(count); 
     Tab.getRange(lastRow + 1, 20).setValue(new Date()); 

     SpreadsheetApp.flush(); 
//  } 
    } 
    } 



} 
관련 문제