Google Spreadsheets的条件函数

时间:2016-10-18 07:55:29

标签: javascript google-apps-script google-sheets google-spreadsheet-api

如何为Google Spreadsheets创建条件公式,其中包括:

  • 如果单元格A1的值是偶数,我希望单元格B2显示A1 * 2的值

  • 如果单元格A1的值是奇数,我希望单元格B2显示A1 + 1的值

这是我想要做的基本蓝图:

function isEven(input) {
    if(input % 2 == 0) {
        return true;
    }
    else {
        return false;
    }
}

function conditionalFormula(input) {
    if(isEven(input)) {
        //Make cell B1's value equal to A1 * 2
    }
    else {
        //Make cell B1's value equal to A1 + 1
    }
}

2 个答案:

答案 0 :(得分:3)

你能不能只使用内置ISEVENIF语句的组合来实现这个目标?

即在单元格B1中写道:

=IF(ISEVEN(A1),A1*2,A1+1)

然后,您可以复制并粘贴它,这应该自动增加单元格索引。

答案 1 :(得分:0)

如果要在列中运行它,请使用ARRAYFORMULA函数,这样就不必将其复制到每个单元格中:

=ARRAYFORMULA(IF(ISEVEN(A1:A),A1:A*2,A1:A+1))
如果没有值,

会给你一个0

=ARRAYFORMULA(IF(ISNUMBER(A1:A), IF(ISEVEN(A1:A),A1:A*2,A1:A+1), ""))

如果A列中的单元格是数字,则只会复制该值。

在上面的示例中,公式位于第1行并适用于整行。将范围从A1:A更改为A2:A20如果放在第2行并处理第2到第20行。使用A1:A的两个公式都会在包含该列的每个单元格中放置一个值(数字或空白元素) ARRAYFORMULA。 A2:A20版本只会将这些值放在单元格2-20中。