是否有条件格式化自定义公式,在该公式中,我可以检查两个或多个单元格(来自该范围)是否总和成一个值?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了是否有条件格式化自定义公式,在该公式中,我可以检查两个或多个单元格(来自该范围)是否总和成一个值?相关的知识,希望对你有一定的参考价值。

基本上,这是我想作为Google表格中条件格式的自定义公式执行的操作:

如果范围内的任何单元格+范围内的任何其他单元格=我指定的值;

返回这些单元格(即按我说的格式格式化)。

我正在做的是,我有一列约80个数字(货币)值,我试图弄清楚它们中的任何两个值之和是否等于给定值。

谢谢您的帮助。

答案

Here is a sheet我已经用这个(有点)简单的公式演示了解决方案:

=ARRAYFORMULA(QUERY(SPLIT(TRANSPOSE(SPLIT(TEXTJOIN("#",TRUE,IF(ROW(B2:B100)<TRANSPOSE(ROW(B2:B100))*(B2:B100<>""),B2:B100&"|"&TRANSPOSE(B2:B100),)),"#")),"|"),"where Col1+Col2="&D2))
另一答案

[Rafa Guillermo是对的。使用脚本执行此操作会容易得多,您可以尝试以下一种方法:

function sum() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName("Sheet1"); //Enter the name of your sheet.

  var column = 1; //Choose the number of column you want
  var startRow = 2; //Choose the number of the first row with values
  var lastRow = sheet.getLastRow();

  var wantedSum = 50; //Your desired value.

  var values = sheet.getRange(startRow, column, lastRow-1).getValues();

  for (var i = 0;i<lastRow-startRow+1;i++) {
    var a = values[i][0];
    for (var j = 0;j<lastRow-startRow+1;j++) {
      var b = values[j][0];
      if (a+b == wantedSum) {
        sheet.getRange(startRow+i, column).setBackground("green"); //You can edit this to the color or format you want.
        sheet.getRange(startRow+j, column).setBackground("green");
        return; // This stops when it finds the first pair that sums what you want, but there may be other pairs.
      }
    }
  }
}

记住要编辑工作表的名称,列,具有该列的值的第一行以及要查找的值。

以上是关于是否有条件格式化自定义公式,在该公式中,我可以检查两个或多个单元格(来自该范围)是否总和成一个值?的主要内容,如果未能解决你的问题,请参考以下文章

LibreOffice Calc:检查单元格是不是为公式

将 Excel 条件格式公式调整为选定范围

自定义公式 Google 电子表格

使用 VLOOKUP 公式的条件格式

Excel VBA - 条件格式中的用户定义函数

EXCEL中图表如何引用自定义的公式名称