EXCEl数字自由组合
如图下图,有四个单元,“千位”“百位”“十位”“个位”,每个单元数字可以是0-9任意一个或几个数字,然后可以自动根据我在各个单元所输入的数字,在结果栏显示输入条件的组合结...
如图下图,有四个单元,“千位”“百位”“十位”“个位”,每个单元数字可以是0-9任意一个或几个数字,然后可以自动根据我在各个单元所输入的数字,在结果栏显示输入条件的组合结果。允许重复如:0000,或7788这样。
展开
展开全部
经过仔细分析和思考,公式进一步得到优化(当然,思路也发生了变化),仍然是数组公式(即在输入完公式后,按【CTRL+SHIFT+回车】后,在下拉或右拉填充公式):
'下拉填充的公式为:
=TEXT(MID(A$2,(ROW(A1)-1)/PRODUCT(LEN(B$2:D$2))+1,1)&MID(B$2,MOD((ROW(A1)-1)/PRODUCT(LEN(C$2:D$2)),LEN(B$2))+1,1)&MID(C$2,MOD((ROW(A1)-1)/LEN(D$2),LEN(C$2))+1,1)&MID(D$2,MOD(ROW(A1)-1,LEN(D$2))+1,1),"[>999]0;")
'右拉填充的公式z在附件中
'是不是要比原来的公式简单了许多!!
追问
当“千位”或“百位”“十位”“个位”为“0”时公式无法显示,麻烦再修改下。谢谢
追答
上述公式,只要千位不为0,应该不会出错。
如果千位为0,公式做如下修改:
=MID(TEXT(1&MID(A$2,(ROW(A1)-1)/PRODUCT(LEN(B$2:D$2))+1,1)&MID(B$2,MOD((ROW(A1)-1)/PRODUCT(LEN(C$2:D$2)),LEN(B$2))+1,1)&MID(C$2,MOD((ROW(A1)-1)/LEN(D$2),LEN(C$2))+1,1)&MID(D$2,MOD(ROW(A1)-1,LEN(D$2))+1,1),"[>9999]0;"),2,4)
展开全部
结果的A1输入
=--(条件!$A2&MID(条件!$B2,RAND()*2+1,1)&MID(条件!$C2,RAND()*2+1,1)&MID(条件!$D2,RAND()*2+1,1))
或
=--(条件!$A2&MID(条件!$B2,ROUND(RAND()+1,0),1)&MID(条件!$C2,ROUND(RAND()+1,0),1)&MID(条件!$D2,ROUND(RAND()+1,0),1))
回车并向右填充。
交替按F2和Enter更新数据。
=--(条件!$A2&MID(条件!$B2,RAND()*2+1,1)&MID(条件!$C2,RAND()*2+1,1)&MID(条件!$D2,RAND()*2+1,1))
或
=--(条件!$A2&MID(条件!$B2,ROUND(RAND()+1,0),1)&MID(条件!$C2,ROUND(RAND()+1,0),1)&MID(条件!$D2,ROUND(RAND()+1,0),1))
回车并向右填充。
交替按F2和Enter更新数据。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
A1
=MID(条件!$A2,INT(RAND()*LEN(条件!$A2))+1,1)&MID(条件!$b2,INT(RAND()*LEN(条件!$b2))+1,1)&MID(条件!$c2,INT(RAND()*LEN(条件!$c2))+1,1)&MID(条件!$d2,INT(RAND()*LEN(条件!$d2))+1,1)
向右填充
=MID(条件!$A2,INT(RAND()*LEN(条件!$A2))+1,1)&MID(条件!$b2,INT(RAND()*LEN(条件!$b2))+1,1)&MID(条件!$c2,INT(RAND()*LEN(条件!$c2))+1,1)&MID(条件!$d2,INT(RAND()*LEN(条件!$d2))+1,1)
向右填充
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询