我有一个特殊情况。我的公式中有三个变量。
=COUNTIF(A1:F1,A84)
现在,当我垂直拖动它时,我想更改第一个参数的值,即 A:F;当我水平拖动它时,我想更改第二个参数的值,即 A84。我不想更改列。永远都不想。
例如:
我该怎么做?
这个答案解决了另一个公式的问题。也许解决方案看起来像这样:
=COUNTIF(INDEX($A:$A,COLUMN(A:A)):INDEX($F:$F,COLUMN(F:F)),$A85)
答案1
=COUNTIF(INDEX($A:$A,COLUMN(B:B)):INDEX($F:$F,COLUMN(B:B)),$A86)
另一个解决方案是使用Indirect()
函数执行相同的操作。
答案2
当 Excel 自动更改单元格引用时,如果您在单元格前面添加 $,它将保持单元格锁定。
因此,要将 A1 的引用锁定到其单元格,无论水平还是垂直移动,您都可以使用 $A$1。
如果您想改变行但不改变列,您可以将 A1 引用更改为 $A1。
如果您想改变列,但保持行不变,您可以将 A1 引用更改为 A$1。
在您的示例中,这将使您的公式:
=CountIf($A$1:$F$1,$A84)
请注意,这意味着您必须手动更改行计数器,因为 Excel 不是这样工作的。因此,您可以逐行执行此操作,但随后必须更改第一个单元格,然后才能将其转置到右侧。