结合间接与IF和COUNTIF
我正在开发一个基于Google表格的数据库,可以显示潜水船的可用性,哪些教练可以使用等等。
我需要复制一些类似的公式到下面的行。 一年中的每一天都有365行,而我需要复制不同公式的几列。 听起来很直截了当,但是,有一些事情使得这一切变得更加困难。
这是一个公式…
=IF(AND(COUNTIF(MER!$T4:$T23,AE3)=0,COUNTIF(CHO!$T4:$T23,AE3)=0, COUNTIF(KEP!$T4:$T23,AE3)=0,COUNTIF(SUP!$T4:$T23,AE3)=0),AE3,"")
- 我正在从'AVL'表工作。 它基本上在同一工作簿中的五个不同的工作表中引用范围,以便与我们每天可用的潜水教师列表进行匹配。
- 我需要将公式复制到正下方的行中,在今年的剩余时间内接近200行,并在2017年的新表上再行365行。
如果我在谷歌表格上正常复制,>粘贴特殊>粘贴公式,公式增加公式上的行号一行。 例如:
=IF(AND(COUNTIF(MER!$T4:$T23,AE3)=0,COUNTIF(CHO!$T4:$T23,AE3)=0, COUNTIF(KEP!$T4:$T23,AE3)=0,COUNTIF(SUP!$T4:$T23,AE3)=0),AE3,"") =IF(AND(COUNTIF(MER!$T5:$T24,AE4)=0,COUNTIF(CHO!$T5:$T24,AE4)=0, COUNTIF(KEP!$T5:$T24,AE4)=0,COUNTIF(SUP!$T5:$T24,AE4)=0),AE4,"")
这对我来说并不好,因为我需要从其他工作表引用的范围是完全不同的,但是,工作表上的工作人员名称所引用的单元格“AVL”向下移动了一行正确。
从其他五张纸张的范围需要每次下降26行。 例如:
=IF(AND(COUNTIF(MER!$T4:$T23,AE3)=0,COUNTIF(CHO!$T4:$T23,AE3)=0, COUNTIF(KEP!$T4:$T23,AE3)=0,COUNTIF(SUP!$T4:$T23,AE3)=0),AE3,"") =IF(AND(COUNTIF(MER!$T30:$T49,AE4)=0,COUNTIF(CHO!$T30:$T49,AE4)=0, COUNTIF(KEP!$T30:$T49,AE4)=0, COUNTIF(SUP!$T30:$T49,AE4)=0, COUNTIF(OTH!$T30:$T49,AE4)=0),AE4,"") =IF(AND(COUNTIF(MER!$U56:$U75,AE5)=0,COUNTIF(CHO!$U56:$U75,AE5)=0, COUNTIF(KEP!$U56:$U75,AE5)=0,COUNTIF(SUP!$U56:$U75,AF5)=0, COUNTIF(OTH!$U56:$U75,AE5)=0),AE5,"")
等等
我之前使用过INDIRECT函数来处理别的事情,并想知道是否应该把我用于其他事情的公式与我需要复制1000次的公式结合起来。 例如…
=INDIRECT("CHO!B" & (3 + 26*(ROW()-3)))
调整和修改,并结合…
=IF(AND(COUNTIF(MER!$T4:$T23,AE3)=0,COUNTIF(CHO!$T4:$T23,AE3)=0, COUNTIF(KEP!$T4:$T23,AE3)=0,COUNTIF(SUP!$T4:$T23,AE3)=0),AE3,"")
以每次我复制公式时,以某种方式增加了26行的范围,而离开细胞我对AE3等,只增加了一行。
用一对非易失性的INDEXfunction构build您的细胞范围。
例如,这两个单元格区域完全相同。
=T4:T23 =INDEX(T:T, 4):INDEX(T:T, 23)
其余的只是简单的math和ROW函数 。 把它放在最上面
=IF(AND(COUNTIF(INDEX(MER!$T:$T, (ROW(1:1)-1)*26+4):INDEX(MER!$T:$T, (ROW(1:1)-1)*26+23), AE3)=0, COUNTIF(INDEX(CHO!$T:$T, (ROW(1:1)-1)*26+4):INDEX(CHO!$T:$T, (ROW(1:1)-1)*26+23), AE3)=0, COUNTIF(INDEX(KEP!$T:$T, (ROW(1:1)-1)*26+4):INDEX(KEP!$T:$T, (ROW(1:1)-1)*26+23), AE3)=0, COUNTIF(INDEX(SUP!$T:$T, (ROW(1:1)-1)*26+4):INDEX(SUP!$T:$T, (ROW(1:1)-1)*26+23), AE3)=0), AE3, "")
根据需要填写。
¹ 只要整个工作手册中的任何内容发生变化,挥发性函数就会重新计算,而不仅仅是当影响其结果的事情发生变化时。 易失性函数的例子是间接 , 偏移 , 今天 , 现在 , 兰德和兰德维恩 。 CELL和INFO工作表函数的一些子函数也会使它们变得不稳定。