繁体   English   中英

Excel-水平填充单元格水平自动填充公式

[英]Excel - autofill formula horizontally with cell number increment

我有以下问题。 我想将此公式=SUMPRODUCT(--($C3:$Q3=C4:Q4))复制到相邻的单元格(D13,E13,F13等)中,但是我想要$ C3: $ Q3变为$ C4:$ Q4。 (基本上=SUMPRODUCT(--($C3:$Q3=C4:Q4)) ====> =SUMPRODUCT(--($C4:$Q4=C4:Q4))等)。 水平拖动没有帮助,因为自动填充会增加行而不是列号。

我尝试使用OFFSET,但据我了解,它引用的是数据而不是公式。 任何帮助,将不胜感激。 提前致谢。

将公式转换为文本应该可以。

  1. =SUMPRODUCT公式向下复制到需要填充的列数。
  2. 将公式转换为文本。 突出显示您复制下来的行,然后将所有=替换为'=
  3. 复制这些行。
  4. 在要使用公式的列中选择单元格,然后将特殊values粘贴到values并进行transpose
  5. 突出显示粘贴的单元格,找到并用=替换所有=

不幸的是,即使看起来很多余,最后一步也是使它起作用的必要步骤。

C13

=SUMPRODUCT(--(OFFSET($C$3:$Q$3,SUM(COLUMN(C13)-COLUMN($C$13)),,,)=$C$4:$Q$4))

然后将其拖到列中。

注意:

1)假设$C$4:$Q$4是一个固定范围要比较,因为在给定的示例中它保持不变

2)您不必介意D列中的公式可以自我比较

您也可以只包含在Index

=SUMPRODUCT(--(INDEX(OFFSET($C$3:$Q$3,COLUMN(C13)-COLUMN($C$13),,,),0,0)=$C$4:$Q$4))

例:

例

编辑:

基于共享工作簿,其中需要在列和行之间拖动以逐个比较64 * 64矩阵元素(其中每个元素是源数组中的一行)

在C71中,放入以下内容,然后向下拖动至BM133:

=SUMPRODUCT(--(INDEX($C$2:$W$64,MATCH($B71,$B$2:$B$64,0),0)=INDEX($C$2:$W$64,MATCH(C$70,$B$2:$B$64,0),0)))

结果:

结果样本

在C71中添加了关于性别的R列测试,然后将以下内容拖到BM133中:

=IF(INDEX($C$2:$W$64,MATCH($B71,$B$2:$B$64,0),16)<>INDEX($C$2:$W$64,MATCH(C$70,$B$2:$B$64,0),16),SUMPRODUCT(--(INDEX($C$2:$W$64,MATCH($B71,$B$2:$B$64,0),0)=INDEX($C$2:$W$64,MATCH(C$70,$B$2:$B$64,0),0))),"")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM