google 应用脚本我有一个问题如何计算重复值
google app script i have a question how to count a duplicate values
SpreadsheetApp how to return unique values from an array
在此 post 如何计算重复值并在 sheetname('test2') Range ('B2:B7') 中显示主题
这是我的 google sheet https://docs.google.com/spreadsheets/d/1HN0XCLrEzlRkInIv6xFnhCFnhZabu7Y-Tz1dvYvsGQM/edit?usp=sharing
在您的情况下,下面的示例脚本怎么样?
示例脚本:
function myFunction() {
const srcSheetName = "test"; // Please set the source sheet name.
const dstSheetName = "test2"; // Please set the destination sheet name.
// Retrieve source and destination sheets.
const ss = SpreadsheetApp.getActiveSpreadsheet();
const [srcSheet, dstSheet] = [srcSheetName, dstSheetName].map(s => ss.getSheetByName(s));
// Retrieve source values and create an object for putting to the destination sheet.
const srcValues = srcSheet.getRange("A2:A" + srcSheet.getLastRow()).getValues();
const obj = srcValues.reduce((o, [a]) => (o[a] = o[a] ? o[a] + 1 : 1, o), {});
// Retrieve the values of column "A" from the destination sheet and create an array for putting to Spreadsheet.
const dstRange = dstSheet.getRange("A2:A" + dstSheet.getLastRow());
const dstValues = dstRange.getDisplayValues().map(([a]) => [obj[a] || 0]);
// Put the result values to the column "B" of the destination sheet.
dstRange.offset(0, 1).setValues(dstValues);
}
- 根据您提供的 Spreadsheet,示例 sheet 名称为
test
和 test2
。请根据实际情况修改。
- 当您 运行 此脚本时,将从源中检索值 sheet 并计算每个值的计数。并且,结果值被放入目标 sheet.
的列“B”
注:
- 此示例脚本适用于您提供的 Spreadsheet。当您更改 Spreadsheet 的结构时,此脚本可能无法使用。请注意这一点。
参考文献:
SpreadsheetApp how to return unique values from an array
在此 post 如何计算重复值并在 sheetname('test2') Range ('B2:B7') 中显示主题 这是我的 google sheet https://docs.google.com/spreadsheets/d/1HN0XCLrEzlRkInIv6xFnhCFnhZabu7Y-Tz1dvYvsGQM/edit?usp=sharing
在您的情况下,下面的示例脚本怎么样?
示例脚本:
function myFunction() {
const srcSheetName = "test"; // Please set the source sheet name.
const dstSheetName = "test2"; // Please set the destination sheet name.
// Retrieve source and destination sheets.
const ss = SpreadsheetApp.getActiveSpreadsheet();
const [srcSheet, dstSheet] = [srcSheetName, dstSheetName].map(s => ss.getSheetByName(s));
// Retrieve source values and create an object for putting to the destination sheet.
const srcValues = srcSheet.getRange("A2:A" + srcSheet.getLastRow()).getValues();
const obj = srcValues.reduce((o, [a]) => (o[a] = o[a] ? o[a] + 1 : 1, o), {});
// Retrieve the values of column "A" from the destination sheet and create an array for putting to Spreadsheet.
const dstRange = dstSheet.getRange("A2:A" + dstSheet.getLastRow());
const dstValues = dstRange.getDisplayValues().map(([a]) => [obj[a] || 0]);
// Put the result values to the column "B" of the destination sheet.
dstRange.offset(0, 1).setValues(dstValues);
}
- 根据您提供的 Spreadsheet,示例 sheet 名称为
test
和test2
。请根据实际情况修改。 - 当您 运行 此脚本时,将从源中检索值 sheet 并计算每个值的计数。并且,结果值被放入目标 sheet. 的列“B”
注:
- 此示例脚本适用于您提供的 Spreadsheet。当您更改 Spreadsheet 的结构时,此脚本可能无法使用。请注意这一点。