Google表格 - 如果ISBLANK QUERY

时间:2016-11-30 16:04:15

标签: google-sheets spreadsheet google-apps

我试图找出一个公式来检查一个列是否为B =' name'是空的。如果单元格为空,我使用此公式,添加50分,如果不是,则添加0分。

我对特定单元格有=IF(ISBLANK(Sheet1!F8), 0, 50)的基本公式,但我也想查询它的名称。

这是我到目前为止所得到的并且它给了我一个错误:

=IF(ISBLANK(QUERY(Sheet1!F, "select D where lower(B)='jennifer'") F) ,0, 50)

修改

我会更多地解释使用以避免混淆。

Sheet1正在从用于积分系统的Google表单中获取信息。 该表格要求提供名字,姓氏,如果他们为该月的活动而竞选或自愿参加。提交表格的每个人都有单独的表格。表" Jennifer"是她的月度和总分。

我想要完成的是检查" Jennifer"参加了那个月的活动。如果单元格没有,则单元格为空白,如果单元格具有事件名称,则单元格为空白。如果是这样,那个月加50点。因此,如果名字="詹妮弗" AND月=" 1月"并且单元格不是空白,添加50分。

当前代码如下,没有错误,但会产生不需要的结果:

=IF(ISBLANK(QUERY(Sheet1!A1:G, "select F where lower(B)='jennifer'and E='"&B1&"'")),0,50)

1 个答案:

答案 0 :(得分:0)

如果我理解正确,如果B列中的单元格是 Jennifer ,或者它是空的,则要将 50 放在单元格中。它是否正确?如果是,请将此公式放在要显示数字的第一个单元格中。如果将其放在第3行中,请将 B1:B 的实例更改为 B3:B

=ARRAYFORMULA( IF(ISBLANK(B1:B),50, IF(LOWER(B1:B) = "jennifer", 50, 0)))

ARRAYFORMULA将此应用于测试范围中定义的行。在这种情况下,B1到B是最后一行。

然后我测试一个空白单元格,如果单元格为空白则返回50。如果它不是空白,我会对大小写字符的任意组合进行jennifer测试,如果单元格只包含jennifer,则放置 50 。如果它有任何其他字符,它将在单元格中放置 0

请注意,这仅适用于Google Spreadsheets。它不会在Excel电子表格中工作,因为那里不存在ARRAYFORMULA()函数。您的标题列出了Google表格,但您还选择了Excel标记。

EDIT QUERY()函数似乎返回一个空字符串,因此结果永远不会为空。将其更改为:

=IF("" = (QUERY(Sheet1!$A1:$G, "select F where lower(B)='"&A1&"'and E='"&B1&"'")),0,50)