Excel公式进阶需求:基于现有随机勾选公式新增扩展公式
公式解决方案
原B行公式
原B行使用的公式:
=LET(total_rows,A2,total_ticks,A1,SORTBY(REPT("✓",SEQUENCE(total_rows)<=total_ticks),RANDARRAY(total_rows)))
E行公式
满足需求:保留B行所有✓,额外添加3个✓使总数量达到D1设定的8个,且保持随机排序:
=LET( r,A2, t,D1, orig,B2:INDEX(B:B,r+1), curr,COUNTIF(orig,"✓"), add,t-curr, blanks,SORTBY(FILTER(SEQUENCE(r),orig=""),RANDARRAY(COUNTBLANK(orig))), new,IF(ISNUMBER(XMATCH(SEQUENCE(r),blanks,0,SEQUENCE(add))),"✓",orig), SORTBY(new,RANDARRAY(r)) )
H行公式
遵循E行规则(保留上一行所有✓,新增指定数量至目标值),假设目标数量为G1单元格设定值:
=LET( r,A2, t,G1, orig,E2:INDEX(E:E,r+1), curr,COUNTIF(orig,"✓"), add,t-curr, blanks,SORTBY(FILTER(SEQUENCE(r),orig=""),RANDARRAY(COUNTBLANK(orig))), new,IF(ISNUMBER(XMATCH(SEQUENCE(r),blanks,0,SEQUENCE(add))),"✓",orig), SORTBY(new,RANDARRAY(r)) )
内容的提问来源于stack exchange,提问作者Germz002
相关产品推荐
相关产品推荐

