如何在 google sheet 中自动生成一系列单词和数字?

how to auto generate a sequence of words and numbers in google sheet?

我需要将“采购订单”列表分类为“页码和项目编号”。 例如,Page1,Item1~7。我从下面的 link 中找到了执行 1 个简单数字序列的方法。但是我想不出做“页码”的方法,为了更进一步,在每页之间添加一个空行。是否可以只使用公式?

https://i.stack.imgur.com/F4Z48.jpg

假设 PO = A 列,页面项目 = b 列,PO = c 列。

在 B2 中:

=IF(MOD(ROW()-1,8)=0,"","P"&INT((ROW()-1)/8+1)&"_#"&MOD(ROW()-1,8)) 

想法:使用行来驱动计数.. mod(x,8) 和小循环计数 & int(x/8+1) 作为大循环计数.

在 C2 中:

=IF(MOD(ROW()-1,8)=0,"",OFFSET(A2,-1*COUNTBLANK($B:B2),0))

想法:“到目前为止 B 列中有多少个空单元格”=“'load' A 列数据所需的移位量”。

如果有,请分享understandable/works/not。

我不知道如何每第 7 行添加一个空行,但我想出了如何制作一个序列并构建一个没有空行的 table:

={ARRAYFORMULA("P"&ArrayFormula(CEILING(sequence(counta(B2:B))/7))&"_#"&array_constrain(transpose(split(rept("1|2|3|4|5|6|7|",counta(B2:B)),"|")),counta(B2:B),1)),
array_constrain(B2:B,counta(B2:B),1)}

我的解决方案可以在这里找到: https://docs.google.com/spreadsheets/d/1owokwWW5OvN5VwZAWB5HvDxtBT82BqLJUMBnio9Gi2M/copy

正如我在对原始 post 的评论中提到的那样,如果 link 包含起始数据和指示的传播 sheet 会更有效您想要结果的位置(相同 sheet?不同 sheet?)。但为了继续前进,我假设您的原始 header、“ 采购订单 ” 在 A1 中并且您的原始 purchase-order 数据运行 A2:A.

基于这些假设,以下公式将生成两列 headers 以及您的 desired-results 图片中显示的所有结果:

=ArrayFormula({"page_item",A1; IFERROR(VLOOKUP(FLATTEN("P"&SEQUENCE(ROUNDUP(COUNTA(A2:A)/7))&"_#"&SEQUENCE(1,7+1)), {ARRAY_CONSTRAIN(FLATTEN("P"&SEQUENCE(ROUNDUP(COUNTA(A2:A)/7))&"_#"&SEQUENCE(1,7)),COUNTA(A2:A),1),FILTER(A2:A,A2:A<>"")},{1,2},FALSE), {"",""})})

可以 与所写的相同 sheet 去任何地方,但将它放在某个其他空列的顶部单元格中可能是最有意义的(例如,C1).

如果您希望每页包含其他数量的部分,只需将公式中 7 的四个实例更改为另一个数字即可。

显然,如果您的真实数据不在 A 列中,您需要调整公式范围以匹配您的实际范围。

至于它是如何工作的,这有点难以解释;这是一个自定义功能,我不知道其他网站访问者会广泛寻求或使用它。因此,让我们首先确保它是您想要的;然后,如果你想要一个解释,请回来报告,我会开始的。