Reputation: 51
I have:
var array1 = [[aaa],[bbb]]; //SpreadsheetApp.getActiveSheet().getRange('A2:A').getValues();
var array2 = [[ccc],[vvv],[fff]]; //SpreadsheetApp.getActiveSheet().getRange('B2:B').getValues();
Then i concatenate arrays:
const newArray = [];
array1.forEach( function(item1) {
array2.forEach( function(item2) {
newArray.push(item1 + " " + item2)
})
});
Result of this function:
Logger.log(newArray);
//[aaa ccc, aaa vvv, aaa fff, bbb ccc, bbb vvv, bbb fff]
How can I convert the result to the next?
[[aaa ccc], [aaa vvv], [aaa fff], [bbb ccc], [bbb vvv], [bbb fff]]
I need this to put values in a column:
sheet.getRange('D2:D').setValues(newArray)
Otherwise, an error is displayed: Unable to convert Array to number [][]
Upvotes: 1
Views: 220
Reputation: 50472
Push a array instead:
var array1 = [["aaa"],["bbb"]]; //SpreadsheetApp.getActiveSheet().getRange('A2:A').getValues();
var array2 = [["ccc"],["vvv"],["fff"]]; //SpreadsheetApp.getActiveSheet().getRange('B2:B').getValues();
const newArray = [];
array1.forEach( function(item1) {
array2.forEach( function(item2) {
newArray.push([item1 + " " + item2])
})
});
console.log(newArray)
Upvotes: 2