如何使用Google Apps脚本组合2个替换Array1元素的多维数组与Arrray2的元素组合?
我一直在努力完成这项工作,而没有任何成功。
这是要放置没有公式的数据。因此,想法是合并这两个阵列并立即将其放置。
array1 =
[
["item1","","","details1"],
["item2","","","details2"],
]
该数组包含从将要放置传入数据的目的地范围中获取的公式,但是由于需要公式,
array2 =
[
["","=iferror(VLOOKUP(A63,'Client List'!$A$1:$S,19,0),"")","=iferror(if(B63="Agency", 'Reference Info'!$C$7, VLOOKUP(A63,'Client List'!$A$1:$T,20,0)),"")",""],
["","=iferror(VLOOKUP(A64,'Client List'!$A$1:$S,19,0),"")","=iferror(if(B64="Agency", 'Reference Info'!$C$7, VLOOKUP(A64,'Client List'!$A$1:$T,20,0)),"")",""]
]
预期结果
array2 =
[
["item1","=iferror(VLOOKUP(A63,'Client List'!$A$1:$S,19,0),"")","=iferror(if(B63="Agency", 'Reference Info'!$C$7, VLOOKUP(A63,'Client List'!$A$1:$T,20,0)),"")","details1"],
["item2","=iferror(VLOOKUP(A64,'Client List'!$A$1:$S,19,0),"")","=iferror(if(B64="Agency", 'Reference Info'!$C$7, VLOOKUP(A64,'Client List'!$A$1:$T,20,0)),"")","details2"]
]
这是我的尝试,但我似乎无法达到底部它:
let finalRowValues = []
for (let a = 0; a < array2.length; a++) {
for (let n = 0; n < array1.length; n++) {
array2[a].forEach(function(value, j){
if(value == '' && array1[n][j] != ''){
finalRowValues.push(array1[n][j])
} else {
finalRowValues.push(value)
}
})
}
}
I've been trying to get this one done, without any success.
This is data to be placed where there is no formula. So, the idea is to merge these two arrays and place it at once.
array1 =
[
["item1","","","details1"],
["item2","","","details2"],
]
This array contains formulas grabbed from the destination range where the incoming data will be placed, but since the formulas are needed,
array2 =
[
["","=iferror(VLOOKUP(A63,'Client List'!$A$1:$S,19,0),"")","=iferror(if(B63="Agency", 'Reference Info'!$C$7, VLOOKUP(A63,'Client List'!$A$1:$T,20,0)),"")",""],
["","=iferror(VLOOKUP(A64,'Client List'!$A$1:$S,19,0),"")","=iferror(if(B64="Agency", 'Reference Info'!$C$7, VLOOKUP(A64,'Client List'!$A$1:$T,20,0)),"")",""]
]
Expected Result
array2 =
[
["item1","=iferror(VLOOKUP(A63,'Client List'!$A$1:$S,19,0),"")","=iferror(if(B63="Agency", 'Reference Info'!$C$7, VLOOKUP(A63,'Client List'!$A$1:$T,20,0)),"")","details1"],
["item2","=iferror(VLOOKUP(A64,'Client List'!$A$1:$S,19,0),"")","=iferror(if(B64="Agency", 'Reference Info'!$C$7, VLOOKUP(A64,'Client List'!$A$1:$T,20,0)),"")","details2"]
]
This is my attempt, but I can't seem to get to the bottom of it:
let finalRowValues = []
for (let a = 0; a < array2.length; a++) {
for (let n = 0; n < array1.length; n++) {
array2[a].forEach(function(value, j){
if(value == '' && array1[n][j] != ''){
finalRowValues.push(array1[n][j])
} else {
finalRowValues.push(value)
}
})
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果没有值,则是插入公式的简单方法:
Here's a simple way to insert the formula if no value is present:
这是这样做的方法之一。
This is one of the way's to do it.