我怎样才能结合这两个公式?
How can I combine these two formulas?
我想合并这两个公式,但似乎不能 ' 和 " 对吗?
我想输出一个 table,其中包含来自源 table 的数据,其 sheet 名称已在 sheet FL-elever
中检查:
- 要加入的公式:
- 选中要过滤的姓名:
- 来源table格式:
您可以使用 Apps 脚本执行此操作 Custom Function。
首先,通过选择 Tools > Script editor
打开绑定脚本,并将以下函数复制到脚本中(检查内联注释):
function POPULATE_TABLE() {
var output = new Array(6).fill("").map(function() {
return new Array(5).fill(""); // Initialize the 2D array you will output
});
var ss = SpreadsheetApp.getActive();
// Get the rows in which checkbox is marked:
var FLelever = ss.getSheetByName("FL-elever");
var checkedNames = FLelever.getDataRange().getValues().slice(1).filter(function(row) {
return row[5] === true;
});
checkedNames.forEach(function(checkedName) { // Iterate through each row with marked checkbox
var sheetName = checkedName[0] + "-" + checkedName[1]; // Get sheet name (column A + "-" + column B)
var sheet = ss.getSheetByName(sheetName); // Get corresponding sheet
if (sheet) { // Check that sheet exists
// Get the source table from the corresponding sheet:
var firstRow = 2;
var firstCol = 2;
var numRows = sheet.getLastRow() - firstRow + 1;
var numCols = sheet.getLastColumn() - firstRow + 1;
var values = sheet.getRange(firstRow, firstCol, numRows, numCols).getValues();
// Iterate through the source table and add the existing values to output:
for (var i = 0; i < values.length; i++) {
for (var j = 0; j < values[i].length; j++) {
if (output[i][j] !== "" && values[i][j] !== "") {
output[i][j] = output[i][j].concat(", ");
}
output[i][j] = output[i][j].concat(values[i][j]); // Concatenate values
}
}
}
});
return output;
}
定义后,您可以像使用任何工作表内置函数一样使用此函数:
参考:
我想合并这两个公式,但似乎不能 ' 和 " 对吗?
我想输出一个 table,其中包含来自源 table 的数据,其 sheet 名称已在 sheet FL-elever
中检查:
- 要加入的公式:
- 选中要过滤的姓名:
- 来源table格式:
您可以使用 Apps 脚本执行此操作 Custom Function。
首先,通过选择 Tools > Script editor
打开绑定脚本,并将以下函数复制到脚本中(检查内联注释):
function POPULATE_TABLE() {
var output = new Array(6).fill("").map(function() {
return new Array(5).fill(""); // Initialize the 2D array you will output
});
var ss = SpreadsheetApp.getActive();
// Get the rows in which checkbox is marked:
var FLelever = ss.getSheetByName("FL-elever");
var checkedNames = FLelever.getDataRange().getValues().slice(1).filter(function(row) {
return row[5] === true;
});
checkedNames.forEach(function(checkedName) { // Iterate through each row with marked checkbox
var sheetName = checkedName[0] + "-" + checkedName[1]; // Get sheet name (column A + "-" + column B)
var sheet = ss.getSheetByName(sheetName); // Get corresponding sheet
if (sheet) { // Check that sheet exists
// Get the source table from the corresponding sheet:
var firstRow = 2;
var firstCol = 2;
var numRows = sheet.getLastRow() - firstRow + 1;
var numCols = sheet.getLastColumn() - firstRow + 1;
var values = sheet.getRange(firstRow, firstCol, numRows, numCols).getValues();
// Iterate through the source table and add the existing values to output:
for (var i = 0; i < values.length; i++) {
for (var j = 0; j < values[i].length; j++) {
if (output[i][j] !== "" && values[i][j] !== "") {
output[i][j] = output[i][j].concat(", ");
}
output[i][j] = output[i][j].concat(values[i][j]); // Concatenate values
}
}
}
});
return output;
}
定义后,您可以像使用任何工作表内置函数一样使用此函数: