Google Script将颜色转换为HEX代码23.000行

时间:2016-01-25 17:11:34

标签: javascript google-apps-script google-api hex

我有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值?

由于

1 个答案:

答案 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();
}