Хотите скопировать соответствующие строки, если значение выполнено (скрипт Google Листов)

#if-statement #google-apps-script #google-sheets #copy

Вопрос:

У меня есть главная вкладка с именами и командами. У меня есть вкладка для каждой команды. Когда я запускаю сценарий, я хочу, чтобы он скопировал имена (столбец A) на вкладку Команда 1, если команда (столбец G) является командой 1, и так далее для каждой команды

 function principalupdate() { var spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); var principallist = spreadsheet.getSheetByName("Principal List")  var agentfull = principallist.getRange("A:A")  var team = principallist.getRange("G2:G990") var fullteamdetail = spreadsheet.getSheetByName("Full Team Schedule Detail")  var fullagentfull = fullteamdetail.getRange("A:A") var softwaredetail = spreadsheet.getSheetByName("Software")  var softwareagentfull = softwaredetail.getRange("A:A") var phonesdetail = spreadsheet.getSheetByName("Phones")  var phonesagentfull = phonesdetail.getRange("A:A") var billingdetail = spreadsheet.getSheetByName("Billing")  var billingagentfull = billingdetail.getRange("A:A") var paymentsdetail = spreadsheet.getSheetByName("Payments")  var paymentsagentfull = paymentsdetail.getRange("A:A") var multidetail = spreadsheet.getSheetByName("Multi")  var multiagentfull = multidetail.getRange("A:A") var tier2detail = spreadsheet.getSheetByName("Tier 2")  var tier2agentfull = tier2detail.getRange("A:A") // Delete Existing Full Names fullagentfull.clearContent() softwareagentfull.clearContent() phonesagentfull.clearContent() billingagentfull.clearContent() paymentsagentfull.clearContent() multiagentfull.clearContent() tier2agentfull.clearContent()  // Copy Current Full Names if (team = "Software"){  agentfull.copyTo((softwareagentfull), {contentsOnly:true})}  } 

Комментарии:

1. Я использую четкое содержимое для удаления старых имен при добавлении новых в Основной список

Ответ №1:

 function teams() {  const ss = SpreadsheetApp.getActive();  const msh = ss.getSheetByName('mtab');  const msr = 2;//master tab data start row  const mvs = msh.getRange(msr, 1, msh.getLastRow() - msr   1, msh.getLastColumn()).getValues();  mvs.forEach(r =gt; {  let sh = ss.getSheetByName(r[6]);  if(sh) {  sh.appendRow([r[0]]);  }  }) }