gpt4 book ai didi

javascript - Google 表格自定义函数条件格式

转载 作者:行者123 更新时间:2023-12-03 10:27:26 24 4
gpt4 key购买 nike

如果单元格的值等于其上方两行单元格的值,我需要使单元格文本变为红色。我的脚本编辑器中有这两个函数:

/**
* Compares cell value to another cell relative in position to it.
* Returns true if equal values.
*
* @param {Number} colDiff Relative positioning column difference.
* @param {Number} rowDiff Relative positioning row difference.
*/
function equalsRelativeCellValue(rowDiff, colDiff) {
var thisCell = SpreadsheetApp.getActiveRange();
var relativeCellValue = getRelativeCellValue(rowDiff, colDiff);
if (thisCell.getValue() === relativeCellValue)
return true;
else
return false;
}


/**
* Returns value of cell according to relative position
*
* @param {Number} colDiff Relative positioning column difference.
* @param {Number} rowDiff Relative positioning row difference.
*/
function getRelativeCellValue(rowDiff, colDiff) {
var range = SpreadsheetApp.getActiveRange();
var col = range.getColumn();
var row = range.getRow();
var range2 = SpreadsheetApp.getActiveSheet().getRange(row + rowDiff,col + colDiff);
return range2.getValue();
}

第二个函数 getRelativeCellValue(rowDiff, colDiff) 工作得很好,我将 8 放入一个单元格中,在其下面的两个单元格中输入了 getRelativeCellValue( -2, 0),单元格的计算结果为 8

但由于某种原因,第一个函数 getRelativeCellValue(rowDiff, colDiff) 无法作为条件格式中的自定义函数使用:

Custom formula is: =equalsRelativeCellValue(-2,0)

困难的部分是指条件格式中引用的单元格的值。但我的函数对我来说看起来是正确的,如果单元格值相等,它返回 true ,如果不相等,它返回 false 。我希望我只是不正确地使用条件格式的“自定义公式是”功能,但是 documentation is pretty sparse .

最佳答案

只需实现您想要执行的操作,只需使用条件格式,选择范围,然后应用到第一个单元格,它将正确应用到所有单元格:

例如。在条件格式对话框中,选择“自定义公式”,粘贴自定义公式 =J10=J8,然后选择范围 J10:J100

旧答案:

您创建了循环引用。

如果您在单元格中输入=equalsRelativeCellValue(-2,0),如果它正在等待函数解析,那么它的值怎么可能是任何值?

您可以在值之外的列中解决这个问题,或者直接在函数中传递值。

您还可以使用它来使单元格之间具有真/假状态:

function equalsRelativeCellValue(rowDiff, colDiff) {
var below = getRelativeCellValue(1, 0);
var relativeCellValue = getRelativeCellValue(2, 0);
if (below === relativeCellValue)
return true;
else
return false;
}

关于javascript - Google 表格自定义函数条件格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29354991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com