如何计算非空的单元格

时间:2018-02-20 15:09:03

标签: excel count

我有两个不同克隆的下调基因探针列表。

我使用公式DECLARE @RoughAverage int = 1 -- Some arbitrary value. The closer it is to the real average, the faster things should be. DECLARE @CheckValue int = (SELECT TOP 1 checkvalue FROM #temp) DECLARE @Sum int = 0 WHILE 1 = 1 -- Refer to BREAK below. BEGIN SELECT TOP (@RoughAverage) @Sum = SUM(qty) OVER(ORDER BY id) FROM #temp ORDER BY id IF @Sum = @CheckValue BREAK -- Indicating you reached your objective. ELSE SET @RoughAverage = @CheckValue - @Sum -- Most likely incomplete like this. END 给出了两个克隆中下调的基因列表。

然而,我现在需要计算有多少,当我尝试复制并粘贴列表以尝试删除我无法删除的空白单元格时,它们就会消失,因为它们是公式。

我已经尝试使用=IF(ISERROR(MATCH(F2,$H$2:$H$1670,0)),"",F2)来计算它们,但是这给了我左栏中的所有基因,因为从技术上讲,所有中间列都被公式填充。

COUNTA

如何获得中间行中出现的所有基因的副本或如何计算中间行中出现的基因数量?

1 个答案:

答案 0 :(得分:0)

您可以采用以下两种方式之一:

  • 使用一个公式计算中间列中出现的基因数量,
  • 获取中间列中出现的所有基因的唯一列表。

我将在下面向您展示这两种解决方案。

使用一个公式来计算列中还包含公式的填充单元格数量:“

您需要使用以下公式:

=COUNTIF($B$2:$B$10,">*")

$B$2:$B$10是您的共享下调的范围  列(没有标题)。根据需要更改范围位置。

Using COUNTIF

此公式通过计算指定范围内至少包含一个字符的所有单元格(通过在函数的*部分中使用通配符criteria完成)来工作。

注意:此公式仅适用于格式为文本或不是数字的单元格。您的数据集完全可以接受,因为您的数据似乎都是字符串。

从单个列返回唯一的,连续的值列表,同时忽略空格或=“”单元格:

如果您希望从第二列返回唯一的值列表,请在F2中使用以下数组公式(此必须使用提交 Ctrl + Shift + 输入或它不起作用):

=IFERROR(INDEX($B$2:$B$10,MATCH(0,COUNTIF($F$1:$G1,$B$2:$B$10),0)),"")

$B$2:$B$10是您的共享下调的范围  列(没有标题)和$F$1:$G1是您创建的新列标题(我的名称是基因列表)来保存此唯一列表(参见下面的图片) 。根据需要更改范围位置。

在新创建的列的第一个单元格中提交公式后,可以将公式复制下来。

Creating a unique list

关于$F$1:$G1,您可以:
- 将您的新列标题仅添加到F1 (但仍在公式中使用$F$1:$G1),
- 合并单元格F1G1

确保新的唯一列表排除空白单元格以及保留""的单元格(通过公式返回)的关键是确保range的{​​{1}}参数函数涵盖新列的标题(COUNTIF)以及一个空白单元格(F1)。空白单元格(G1)可确保计算数据列(列G1)中的所有空白/空单元格,从而防止它们在新列表中留下空白。在B中将其全部包装,您可以根据需要将新范围向下拖动,而不必在整个地方看到错误。