如何在Excel中使用公式创建数字模式

时间:2020-05-20 11:23:57

标签: excel excel-formula

我一直在尝试使用公式严格在excel中获得以下内容。有人可以让我知道是否仍然可以吗?

Click here for example of the requirement

3 个答案:

答案 0 :(得分:3)

例如在B2中:

=IF(COLUMN()-(ROW()-1)>0,COLUMN()-(ROW()-1),COLUMN()-ROW()+13) 

答案 1 :(得分:3)

由于此重复从1到12,因此可以基于1+MOD(??,12)

({ModModulo基本上是除以数的余数。您可能回想起在小学学习7 ÷ 3 = 2 remainder 1的情况-这意味着MOD(7,3)=17 mod 3 = 1。这也意味着MOD(12, 12)=0MOD(13,12)=1MOD(24,12)=0等)

随着每列的增加,我们可以从这一点开始:

=1+Mod(Column(), 12)

由于此列从B列中的3开始,因此我们需要从该列中减去2:

=1+Mod(Column()-2, 12)

现在,这是排序的第一行。那第二个呢?好吧,它每行减少 1-与MOD一起使用时,它与增加 11相同(因为12-1=11

=1+Mod(Column()-2 + 11*Row(), 12)

但是,这又太高了-因为我们从第二行开始,所以我们需要再次减去2:

=1+Mod(Column()-2 + 11*(Row()-2), 12)

最后(如Marmiketin在评论中指出的那样),我们实际上具有(X-2) - (Y-2)(X-Y)-(-2--2)的形式,即(X-Y)-0,因此我们可以删除两个-2简化。如果您需要按行或列来偏移原点,则只需记住将它们放在哪里:

=1+Mod(Column() + 11*Row(), 12)

然后,我们有☺

答案 2 :(得分:1)

B2 中输入:

=COLUMNS($A:A)

并复制。在 B3 中输入:

=IF(B2=1,12,B2-1)

并复制。然后向下复制 B3 M3

enter image description here

EDIT#1:

如果我们确保 row#1 始终为空(如我在示例中所示),我们可以使用单个公式

B2 中输入:

=IF(B1="",COLUMNS($A:A),IF(B1=1,12,B1-1))

先将其复制然后再向下复制。

EDIT#2:

应该有另一种方法(不使用IF()语句)使用ROWS()COLUMNS()MOD()函数来获得相同的结果桌子。

如果您拥有Excel 365,甚至可以使用SEQUENCE()

也许其他人可以看到它。

相关问题