要计算不同Google表链接的ImportRange之和,首先需要确保这些表链接都是有效的,并且您有访问权限。然后,您可以使用Google Apps Script编写一个自定义函数来计算这些链接的ImportRange之和。
下面是一个示例代码:
function importRangeSum(sheetUrls, range) {
var sum = 0;
// 遍历所有的表链接
sheetUrls.forEach(function(url) {
// 获取链接中的表ID和要导入的范围
var sheetId = url.match(/[-\w]{25,}/)[0];
var importRange = "'" + sheetId + "'!" + range;
// 使用ImportRange函数导入数据
var importedData = SpreadsheetApp.getActiveSpreadsheet().getRange(importRange).getValues();
// 计算导入数据的和
importedData.forEach(function(row) {
row.forEach(function(cell) {
sum += cell;
});
});
});
return sum;
}
在这个示例函数中,sheetUrls
是一个包含各个表链接的数组,range
是要导入的范围(例如,A1:B10
)。函数首先遍历所有的表链接,然后使用正则表达式从链接中提取表ID。然后,它使用ImportRange函数将指定范围的数据导入到当前活动的电子表格中。最后,它计算导入数据的和,并返回结果。
要在电子表格中使用这个自定义函数,您可以通过以下步骤进行设置:
importRangeSum()
函数了。例如,如果您有两个表链接,分别是https://docs.google.com/spreadsheets/d/abc1234567890123456789/edit#gid=0
和https://docs.google.com/spreadsheets/d/def9876543210987654321/edit#gid=0
,要计算这两个表中A1到B10范围内的数据之和,您可以在单元格中键入=importRangeSum(["https://docs.google.com/spreadsheets/d/abc1234567890123456789/edit#gid=0", "https://docs.google.com/spreadsheets/d/def9876543210987654321/edit#gid=0"], "A1:B10")
。
请注意,您需要在importRangeSum()
函数中提供的表链接中具有访问权限,并且这些链接必须指向有效的Google表。