Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 将特定列的数据复制到另一个工作表_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 将特定列的数据复制到另一个工作表

Google apps script 将特定列的数据复制到另一个工作表,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我一直在寻找将特定列和行数据复制到现有工作表的方法。我的目标是创建一个脚本,该脚本将从主项目工作表中提取数据,并在现有工作表上创建订购表单 这是我的密码 function createOrder() { var ss = SpreadsheetApp.getActiveSheet(); var ordess = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Ordering"); var mayitems = 186; //num

我一直在寻找将特定列和行数据复制到现有工作表的方法。我的目标是创建一个脚本,该脚本将从主项目工作表中提取数据,并在现有工作表上创建订购表单

这是我的密码

function createOrder() {
var ss = SpreadsheetApp.getActiveSheet(); 
var ordess = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Ordering"); 
var mayitems = 186; //number of rows
var descrip = ss.getRange(2, 10, mayitems, 4).getValues(); //first 4 columns to pull
var descrip2 = ss.getRange(2, 19, mayitems).getValues();  //fifth column to pull
var price = ss.getRange(2, 76, mayitems).getValues(); //sixth column to pull
var pallets = ss.getRange(640, 76, 1).getValues(); //specific cell to pull
var targdesc = ordess.getRange(1, 1, mayitems, 4); //first 4 columns to copy to
descrip.copyTo(targdesc); //copying the first 4 columns.
}
我查看了函数引用,copyTo似乎是我应该使用的函数。我遵循了这个示例,但当我运行代码时,它给了我一个TypeError,无法在对象中找到copyTo函数

我还希望创建一个脚本,该脚本将过滤带有空白单元格的行,就像过滤选项可以做的那样,但会自动完成


非常感谢您的帮助。

您的变量
descripp
是一个二维数组。
copyTo()
方法适用于范围,但不适用于数组。看起来您是从不相邻的特定列获取数据。因此,您需要在多行代码中复制多个范围,或者将所需的数据组合到一个数组中,然后使用
setValues()
在目标位置设置值。如果要使用
copyTo()
,则根本不需要使用
getValues()

var descrip = ss.getRange(2, 10, mayitems, 4);
var targdesc = ordess.getRange(1, 1, mayitems, 4);
descrip.copyTo(targdesc);

唯一的区别是,
getValues()
方法没有链接。

非常感谢!当我从每行中删除.getValue后,一切都正常了。感谢您的反馈。