Google apps script 如何颠倒接头的顺序?
我试图在输入日期时从工作表中复制某些单元格,然后将它们粘贴到另一个工作表中 下面是我的源代码表最后4列的图像。OneEdit日期为AC列: 我想按顺序复制B、I、AA、AC、AB列,并将它们粘贴到我的目标工作表中。这是AB之前的AC。您可以从下图中看到,事件以B、I、AA、AB、AC的顺序粘贴到我的目标工作表中: 目标工作表有A到K列,但我只粘贴到A到F列 我已经尝试在脚本中反转拼接顺序,但我就是无法让任何东西正常工作。我尝试在源代码表中反转列,但是列AB是一个下拉列表,我不知道如何让onEdit触发器在下拉列表中工作 这是我当前的脚本,没有相反的顺序:Google apps script 如何颠倒接头的顺序?,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我试图在输入日期时从工作表中复制某些单元格,然后将它们粘贴到另一个工作表中 下面是我的源代码表最后4列的图像。OneEdit日期为AC列: 我想按顺序复制B、I、AA、AC、AB列,并将它们粘贴到我的目标工作表中。这是AB之前的AC。您可以从下图中看到,事件以B、I、AA、AB、AC的顺序粘贴到我的目标工作表中: 目标工作表有A到K列,但我只粘贴到A到F列 我已经尝试在脚本中反转拼接顺序,但我就是无法让任何东西正常工作。我尝试在源代码表中反转列,但是列AB是一个下拉列表,我不知道如何让onE
//从事件/事件表复制并粘贴到内部审核表
功能OneEdit(e){
var电子表格=e.source;
var sheet=range.getSheet();
var sourcesheetname=“事件/事件”
var范围=e范围;
var row=range.getRow();
var column=range.getColumn();
var editedColumn=range.getColumn();
var editedRow=range.getRow();
var列=29;
var date=range.getValue();
if(Object.prototype.toString.call(date)=='[Object date]'&&editedColumn==column&&editedRow>2&&sheet.getName()==sourcesheetname){
表1.hideColumns(27,3);
var targetsheetname=“内部审计登记簿”;
var target=e.source.getSheetByName(targetsheetname);
var numCols=sheet.getLastColumn();
var values=sheet.getRange(行,1,1,numCols).getValues()[0];
拼接(9,17)//删除J到Z列
值。拼接(2,6);//删除列C到H
value.splice(0,1);//删除列A
var lastRow=getLastRow(目标);
var lastCol=target.getLastColumn();
价值。取消移位(“事件/事件”);
target.getRange(lastRow+1,1,1,values.length).setValues([values]);//修改
如果(lastRow>=3)target.getRange(lastRow,9,1,3).copyTo(target.getRange(lastRow+1,9,1,3),SpreadsheetApp.CopyPasteType.PASTE_公式);//添加//追加新行
target.getRange(lastRow,values.length).offset(1,0.activate();
target.getRange(lastRow+1,1,1,values.length+2).setOrder(true,true,true,true,true,true,“白色”,电子表格应用程序.BorderStyle.SOLID)
}
}
- 您希望实现
列B、I、AA、AC、AB的顺序,而不是
值的
B、I、AA、AB、AC
values.splice(9,17)//删除J到Z列
值。拼接(2,6)//移除柱C至柱H
值。拼接(0,1)//删除A列
values=[…values.slice(0,3),values[4],values[3]];//@谢谢你的回复和测试。我很高兴你的问题解决了。也谢谢你。
values.splice(9, 17) //Remove Columns J to Z
values.splice(2, 6); //Remove Columns C to H
values.splice(0, 1); //Remove Column A
values.splice(9, 17) //Remove Columns J to Z
values.splice(2, 6); //Remove Columns C to H
values.splice(0, 1); //Remove Column A
values = [...values.slice(0, 3), values[4], values[3]]; // <--- Added