当前位置: 首页 > 知识库问答 >
问题:

Googls Sheets:创建复制按钮,将特定列中的行范围从一个工作表复制到另一个工作表

平元明
2023-03-14

使用Google Sheets,我试图制作一个复制按钮,一旦点击它,就应该启动脚本代码,以便复制特定列中的一些值(例如,从特定行开始的20个特定单元格),并将它们粘贴到下一个空列中另一张纸(纸2)从特定的一行开始。

每次按下按钮,它都会将结果复制到工作表2中的下一个空列,这样就不会复制到上一个粘贴的结果上。

表1中这些单元格的值或文本:C4、C5、C6、C7、C8、C9、C10、C11、C12、C13、C14、C15、C16、C17、C18、C19、C20、C21、C22、C23

进入工作表2上的相应单元格:F11:F30

C4进入F11,C5进入F12,依此类推。。。。。最后C23变成了F30

下次单击复制按钮时,表1中C4:C23的值将再次复制到表2中的下一个emtpy列,即G11:G30。

共有1个答案

闾丘鸣
2023-03-14

解决方案:

您可以在评论中找到解释:

function myFunction() {
  const ss = SpreadsheetApp.getActive();
  // get sheet objects for Sheet1 and Sheet2
  const sh1 = ss.getSheetByName('Sheet1'); // use your sheet name for sheet1
  const sh2 = ss.getSheetByName('Sheet2'); // use your sheet name for sheet2
  // get the data from Sheet1 C4:C23
  const data = sh1.getRange('C4:C23').getValues();
  // copy the data to Sheet2 starting from row 11 after the last column with content
  sh2.getRange(11,sh2.getLastColumn()+1,data.length,1).setValues(data); 
}

参考文献:

  • getLastColumn()
  • getRange(行、列、numRows、numColumns)
  • 范围方法getValues()返回什么,setValues()接受什么
 类似资料: