求助:用Google Sheets的ARRAYFORMULA生成指定格式序列
解决方案
核心公式
假设:
- 单元格
A1存储小数点后的最大数值(比如输入3则每个整数对应3个小数项,输入2则对应2个) - 单元格
B1存储需要生成的总行数
使用以下公式生成文本格式序列:
=ARRAYFORMULA(QUOTIENT(SEQUENCE(B1)-1,A1)+1 & "." & MOD(SEQUENCE(B1)-1,A1)+1)
如果需要生成数值格式的序列(方便后续计算),用VALUE转换:
=ARRAYFORMULA(VALUE(QUOTIENT(SEQUENCE(B1)-1,A1)+1 & "." & MOD(SEQUENCE(B1)-1,A1)+1))
公式说明
SEQUENCE(B1):生成从1到B1的连续整数序列,对应要填充的每一行QUOTIENT(SEQUENCE(B1)-1,A1)+1:计算每个位置的整数部分——通过取商运算,把每A1个行号归为同一个整数(比如A1=3时,行1-3的整数部分是1,行4-6是2,以此类推)MOD(SEQUENCE(B1)-1,A1)+1:计算每个位置的小数部分——通过取余运算,循环生成1到A1的数值(比如A1=3时,行1-3的小数部分是1、2、3,行4-6重复1、2、3)& "." &:将整数部分和小数部分用小数点连接,组成目标格式的字符串
示例
- 若
A1=3,B1=7,生成序列:1.1, 1.2, 1.3, 2.1, 2.2, 2.3, 3.1 - 若
A1=2,B1=4,生成序列:1.1, 1.2, 2.1, 2.2
内容的提问来源于stack exchange,提问作者Retsied
相关产品推荐
相关产品推荐

