Google Sheets公式实现:将列中每个姓名重复指定次数
解决Google Sheets姓名批量重复的方案
针对你遇到的REPT函数字符限制问题,推荐使用序列索引匹配法,完全规避字符串拼接的字符数限制,支持任意数量姓名和重复次数:
基础公式(固定重复900次)
假设姓名数据在A2:A(A1为表头),在输出列(比如B2)输入以下公式:
=ARRAYFORMULA(INDEX(A2:A, CEILING(SEQUENCE(COUNTA(A2:A)*900)/900)))
公式逻辑
COUNTA(A2:A):统计A列有效姓名的数量COUNTA(A2:A)*900:计算需要生成的总行数(每个姓名重复900次)SEQUENCE(...):生成从1到总行数的连续序列CEILING(SEQUENCE(...)/900):将序列按900为一组向上取整,得到每个位置对应的姓名索引(比如1-900对应1,901-1800对应2,以此类推)INDEX(A2:A, ...):根据索引提取对应姓名,ARRAYFORMULA自动填充所有行
灵活调整重复次数的版本
如果需要随时修改重复次数,可将次数放在单独单元格(比如C1),公式改为:
=ARRAYFORMULA(INDEX(A2:A, CEILING(SEQUENCE(COUNTA(A2:A)*C1)/C1)))
注意事项
- 若A列存在空行,可先用
FILTER过滤无效数据,将公式中的A2:A替换为FILTER(A2:A, A2:A<>"") - 公式仅需在输出列的第一个单元格输入一次,无需手动下拉填充
内容的提问来源于stack exchange,提问作者Stefan Meier
相关产品推荐
相关产品推荐

