admin管理员组文章数量:1426014
I am trying to concatenate two columns delimited by ,
and post back the results to a third column
Data looks like:
colA colb concatenated
aa bb ww ww aa bb, ww ww
mm
qq qq
zz oo zz oo
ss vv zz ss, vv zz
I get the error Cannot read property "0" from undefined.
Thanks for any help
function ConCat() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Elements");
var lr = sheet.getLastRow();
var values1 = sheet.getRange(1, 1, lr,1).getValues(); //Get vales for Column1
var values2 = sheet.getRange(1, 2, lr,1).getValues(); //Get values for column 2
var results = []; //Create a empty array to be filled concatenated elements
//Add items to results
for(var i=0; i<lr; i++){
results[i] = (values1[i][0]+", "+values2[i][0]);
}
//Post back to column 3 starting on row 2
sheet.getRange(2, 3, lr, 1).setValues([results]);
}
I am trying to concatenate two columns delimited by ,
and post back the results to a third column
Data looks like:
colA colb concatenated
aa bb ww ww aa bb, ww ww
mm
qq qq
zz oo zz oo
ss vv zz ss, vv zz
I get the error Cannot read property "0" from undefined.
Thanks for any help
function ConCat() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Elements");
var lr = sheet.getLastRow();
var values1 = sheet.getRange(1, 1, lr,1).getValues(); //Get vales for Column1
var values2 = sheet.getRange(1, 2, lr,1).getValues(); //Get values for column 2
var results = []; //Create a empty array to be filled concatenated elements
//Add items to results
for(var i=0; i<lr; i++){
results[i] = (values1[i][0]+", "+values2[i][0]);
}
//Post back to column 3 starting on row 2
sheet.getRange(2, 3, lr, 1).setValues([results]);
}
Share
Improve this question
edited Jan 7, 2018 at 19:21
xyz
asked Jan 7, 2018 at 18:48
xyzxyz
2,29811 gold badges49 silver badges71 bronze badges
2 Answers
Reset to default 5setValues wants a 2d array. You have a 1d array. Change
results[i] = (values1[i][0]+", "+values2[i][0]); to
results[i] = [values1[i][0]+", "+values2[i][0]];
and change
sheet.getRange(2, 3, lr, 1).setValues([results]); to
sheet.getRange(2, 3, lr, 1).setValues(results);
try this: results.addItem(values[i][0]+' '+values[i][1]); or results.push(values[i][0],values[i][1]);
本文标签: javascriptConcatenate two columns in google sheets scriptStack Overflow
版权声明:本文标题:javascript - Concatenate two columns in google sheets script - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1745414191a2657605.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论