javascript - 找到唯一 ID 时更新或替换其他工作表中的行数据 - Google Appscript
问题描述
我需要有人修改我在此处找到的此脚本,以便在找到唯一 ID 时从 sheet1 更新或替换 sheet2 的行值。这只适用于第 2 列..我需要一些东西来更新或替换 sheet2 中的行,最多 10 列或更多。我有一个示例电子表格。如果您在 sheet2 上看到,某些行值丢失或尚未更新,因此我需要更新或替换 sheet1 中的行。
这是电子表格:
https://docs.google.com/spreadsheets/d/100sjGCr0HSdJE1AERCJ9bGKiu3Vs2KxrvGIIjIrOjHw/edit?usp=sharing
感谢您的帮助和分享您的知识。
函数更新主条目(){ var ss=SpreadsheetApp.getActive(); var sh1=ss.getSheetByName('Sheet1'); var rg1a=sh1.getRange(2,1,sh1.getLastRow()-1,1); var vA1a=rg1a.getValues(); var rg1b=sh1.getRange(2,2,sh1.getLastRow()-1,1); var vA1b=rg1b.getValues(); var sh2=ss.getSheetByName('Sheet2'); var rg2a=sh2.getRange(2,1,sh2.getLastRow()-1,1); var vA2a=rg2a.getValues(); var rg2b=sh2.getRange(2,2,sh2.getLastRow()-1,1); var vA2b=rg2b.getValues(); for(var i=0;i<vA1a.length;i++) { for(var j=0;j<vA2a.length;j++) { 如果(vA1a[i][0]==vA2a[j][0]){ vA2b[j][0]=vA1b[i][0] } } } rg2b.setValues(vA2b);
解决方案
Try the following code, in the second line, change the value of "numColumns" as per your need:
function updateEntrees() {
var numColumns = 9;
var ss = SpreadsheetApp.getActive();
var sh1 = ss.getSheetByName('Sheet1');
var rg1a = sh1.getRange(2,1,sh1.getLastRow()-1,1);
var vA1a = rg1a.getValues();
var rg1b = sh1.getRange(2,2,sh1.getLastRow()-1,numColumns);
var vA1b = rg1b.getValues();
var sh2 = ss.getSheetByName('Sheet2');
var rg2a = sh2.getRange(2,1,sh2.getLastRow()-1,1);
var vA2a = rg2a.getValues();
var rg2b = sh2.getRange(2,2,sh2.getLastRow()-1,numColumns);
var vA2b = rg2b.getValues();
for( var i=0; i < vA1a.length; i++ ) {
for( var j=0; j < vA2a.length; j++ ) {
if( vA1a[i][0] == vA2a[j][0] ) {
vA2b[j] = vA1b[i];
}
}
}
rg2b.setValues(vA2b);
};
推荐阅读
- javascript - React 16:TypeError:this.state.userInput.map 不是函数
- python - Counting Occurences of a String within elements of a list?
- java - OneToMany 映射在 Controller crud Spring Boot Rest API 中不起作用
- windows - 具有 Windows 身份验证的 IIS 和 HttpListener (.NET)
- apache - 迁移到新服务器后,Perl CGI 每日图片脚本未按预期运行
- amazon-web-services - How config letsencrypt ssl for non-www and www domain on the aws elastic beanstalk?
- ggplot2 - How to adjust plot areas in ggplot?
- android - React-Native Execution failed for task ':react-native-svg:verifyReleaseResources'
- javascript - 如何在对 ios 的反应天真中显示从 firebase 检索到的数据
- python - Python 2.7 和 3.6 之间的不同 @patch 行为(使用模拟)