在excel中生成一个真值表

我有需要做一个公式,给你一个可变数量的列的真值表

例子

样本4位真值表

将FirstCellreplace为包含第一个2 ^ 1值的单元格的静态引用,例如对于一个4位表(16个值)$ D $ 1,对网格的其余部分(例如A1:D16)进行自动填充

=IF(MOD(ROW()-ROW(FirstCell),POWER(2, ((COLUMN() - COLUMN(FirstCell)) * -1) + 1)) >= (POWER(2, ((COLUMN() - COLUMN(FirstCell)) * -1) + 1) / 2),1,0) 

这背后的逻辑是:

如果当前的行模数2功率电stream列(* -1作为第一个值在最后一列,+ 1因为它从0开始)大于或等于2功率电stream列的一半,则将该值设为1,否则把值设为0。