我有23.000个细胞(H3:H23003)的列表,它们都具有特定的细胞颜色。我需要那些颜色的HEX值。目前,我通过在脚本编辑器中运行此脚本来获取这些脚本:
function getHex(input) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var cell = ss.getRange(input);
var result = cell.getBackground();
return result
}
然后我在表格中使用这个公式:
=getHex(cell("address",G21))
但是由于大量的细胞需要很长时间才能复制公式并获得HEX值。
有没有办法在自动化过程中执行此操作,方法是使用可以一次运行每个单元格的脚本,而无需手动复制公式或计算脚本中的值,只需粘贴HEX值?
由于
答案 0 :(得分:1)
不是一次获取一个单元格的背景,而是使用getBackgrounds一次获取所有背景。例如:
/*
* Return the backgrounds of the referenced cells.
*
* @param {"A1:A5"} reference A reference string
*
* @customfunction
*/
function myBackgrounds(reference) {
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getRange(reference);
return range.getBackgrounds();
}