gpt4 book ai didi

javascript - 如何计算具有特定文本和颜色的单元格

转载 作者:行者123 更新时间:2023-11-30 06:13:20 25 4
gpt4 key购买 nike

我需要对 Google 表格中具有特定颜色和文本的单元格进行计数。我找到了一个用颜色计数细胞的代码,在这里

function countColor(countRange,colorRef) {
var activeRg = SpreadsheetApp.getActiveRange();
var activeSht = SpreadsheetApp.getActiveSheet();
var activeformula = activeRg.getFormula();
var countRangeAddress = activeformula.match(/\((.*)\,/).pop().trim();
var backGrounds = activeSht.getRange(countRangeAddress).getBackgrounds();
var colorRefAddress = activeformula.match(/\,(.*)\)/).pop().trim();
var BackGround = activeSht.getRange(colorRefAddress).getBackground();
var countCells = 0;
for (var i = 0; i < backGrounds.length; i++)
for (var k = 0; k < backGrounds[i].length; k++)
if ( backGrounds[i][k] == BackGround )
countCells = countCells + 1;
return countCells;
};

因此 Google 表格中的公式如下所示:

=countcolor(Sheet1!A:A,C1)

其中 A:A1 是范围,C1 是带有颜色样本的单元格

我的一个 friend 帮了我一点忙,做了一个计算文本和颜色的函数,但是文本应该在函数内部输入。这是代码:

function count_Color_and_text_Cells(countRange,colorRef) { 
var activeRg = SpreadsheetApp.getActiveRange();
var activeSht = SpreadsheetApp.getActiveSheet();
var activeformula = activeRg.getFormula();
var countRangeAddress = activeformula.match(/\((.*)\,/).pop().trim();
var backGrounds = activeSht.getRange(countRangeAddress).getBackgrounds();
var text = "test" // Text you whant to count
var arrData = activeSht.getRange(countRangeAddress).getDisplayValues()
var colorRefAddress = activeformula.match(/\,(.*)\)/).pop().trim();
var BackGround = activeSht.getRange(colorRefAddress).getBackground();
var countCells = 0;
for (var row = 0; row < backGrounds.length; row++)
for (var col = 0; col < backGrounds[row].length; col++)
if ( backGrounds[row][col] == BackGround )
if (arrData[row][col].match(text))
countCells = countCells + 1;
return countCells;

}

我需要的是在函数中创建文本标准,这样我就可以选择一个范围,键入特定的文本并获得结果。期待它看起来像这样:

=countcolor(Sheet1!A:A,"TextSample",C1)

因此它可以计算用户在公式中输入的具有正确颜色和文本的单元格。

谢谢你,祝你有美好的一天!

最佳答案

您可以像这样提供文本作为参数:

function count_Color_and_text_Cells(countRange,text,colorRef) { 

不要再次声明 text 即删除 var text=''

阅读和练习:

关于javascript - 如何计算具有特定文本和颜色的单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57646107/

25 4 0
文章推荐: javascript - 刽子手游戏中的增量字母
文章推荐: java - 如何从包含键 String 和 list 的 hashmap 中仅获取一个值