将满足条件的特定行复制到另一张纸上

用户14523871

我几天前使用以下链接提出了类似的要求:

如何将特定行从一张纸复制到另一张纸(Google Apps脚本)

现在,我有新的要求,需要您的帮助:

  1. 该脚本应将T列中值“否”的特定行从一张纸复制到另一张纸。复制值和格式很重要。

  2. 完整的行应被复制。

  3. 成功复制后,应在源表中删除该行。

你能帮我么?非常感谢你!

到目前为止,您可以在下面找到@Marios解决方案。在此再次表示感谢!

  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const srcSheet = ss.getSheetByName("[Overview] All_Cases");
  const tarSheet = ss.getSheetByName("OPS_FUNNEL");
  const data = srcSheet.getDataRange().getValues().filter(r=>r[21]=='No').map(r => [r[0]]);
  var tarlast = tarSheet.getRange("A:A").getValues().filter(String).length;
  
  if (data.length>0){
    tarSheet.getRange(tarlast+1,1,data.length,1).setValues(data);  
  }
马里奥斯

说明:

您可以将已删除的行索引存储在过滤器函数内部,然后使用经典方法向后删除行。

解:

T的数组索引为19,而不是21请注意这一点。

function myFunction() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const srcSheet = ss.getSheetByName("[Overview] All_Cases");
  const tarSheet = ss.getSheetByName("OPS_FUNNEL");
  const rowsD = [];
  const data = srcSheet.getDataRange().getValues()
               .filter((r,i)=>{
                       let val = r[19]=='No';
                       if(val){
                          rowsD.push(i+1);
                          return val;
                       }                      
                });
  if (data.length>0){
    tarSheet.getRange(tarSheet.getLastRow()+1,1,data.length,data[0].length).setValues(data);
    for (var i = rowsD.length - 1; i>=0; i--) {
      srcSheet.deleteRow(rowsD[i]); 
    }
  };
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在特定行上搜索值,将整列复制到另一张纸上

将范围复制到另一张纸上

如何有条件地将一行复制到另一张纸上?

我想使用VBA将包含特定文本的特定行复制到另一张纸上

给定行实例,将整行复制到另一张纸上

将包含特定单词的单元格复制到另一张纸上的单元格

根据下拉菜单中的选择将数据复制到另一张纸上

如何使用IF AND Macro将单元格复制到另一张纸上?

将1列经过过滤的数据复制到另一张纸上

将Excel行从一张纸复制到另一张纸

将行从一张纸复制到另一张纸

我正在尝试将4个数据透视表的rowlabel一张一张地复制到另一张纸上

如果满足条件,则将数据从一张纸复制到另一张纸

如果满足三个不同条件,如何使用VBA将数据从一张纸复制到另一张纸?

将单元格复制到另一张纸上,并自动填充复制的单元格10次

查找具有特定标题的数据,并将整列复制到另一张纸上

忽略公式时,仅将包含数据的行复制到另一张纸上的最后一个空行

使用VBA,将所有公式从一张纸复制到另一张纸上,而没有其他内容?

将形状从一张纸复制到另一张纸上,偏移量以像素为单位

VBA Excel将行从一张工作表复制到另一张工作表中具有特定值的行

Excel根据条件将数据从一张纸复制到另一张纸

如果符合条件(相对行),则将数据从一张纸复制到另一张纸

VBA将符合条件的行复制到仅粘贴值的另一张工作表

错误的数据被复制到另一张纸上

寻找价值并将整行复制到另一张纸上

使用 vba 宏代码将特定列从一张纸复制到另一张纸

使用VBA将一行从一张纸复制到另一张纸

将数据匹配从一张工作表复制到特定行范围内的另一张工作表 Google 应用脚本

如何将特定行从一张纸复制到另一张纸(Google Apps脚本)